关于如何使用虚拟机安装docker、搭建Gitlab,可以看之前的文章。里面包含了网络配置、端口映射等过程 从VirtualBox到Docker到Gitlab的安装

这篇文章,主要是在之前的基础上,简单搭建MySQL。

第一步:通过ssh进入Linux

我这里使用的Putty工具。

  • 一般默认端口是:22,这里也是看之前端口映射是,我们配置的是哪一个端口
    Putty
    另一种方式,是通过cmd命令进入LInux
    输入
ssh root@127.0.0.1

cmd

第二步:下载MySQL镜像

我这里下载的是MySQL5.6的版本,还是毕竟习惯使用这个版本
命令

# 想要下载MySQL最新版本的话,就忽略版本好
docker pull mysql:5.6

mysql:5.6命令

# 通过此命令查看MySQL镜像是否安装成功,以及对应的版本号
docker images

docker images

第三步:启动MySQL container

第一种方式

docker run 
-p 3307:3306
--name mysql 
--restart=always 
-v $PWD/conf:/etc/mysql/conf.d 
-v $PWD/logs:/logs 
-v $PWD/data:/var/lib/mysql 
-e MYSQL_ROOT_PASSWORD=123456 
-d mysql:5.6
  • -p 3307:3306:将容器3306的端口映射到主机3307的端口
  • –name mysql:定义container的名称为mysql
  • –restart=always:每次都会自动启动MySQL服务
  • -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf
  • -v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs
  • -v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql
  • -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码
  • -d 使得container在后台运作

第二种方式:使用docker-compose启动

services:
  mysql-db:
    container_name: mysql-5.6 
    image: mysql:5.6
	restart: always
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: root
    volumes:
      - "/home/XXX/app/mysql/data:/var/lib/mysql"
      - "/home/XXX/app/mysql/config:/etc/mysql/conf.d"
	  - "/home/XXX/app/mysql/logs:/logs"
第四步:配置端口映射
  • 打开Oracle VM VirtualBox
  • 进到NAT
  • 将3307的端口映射出来
    配置端口映射
第五步:尝试在本机上连接
  • 打开Navicat for MySQL,平时在本地开发,我偏向于直接在IDEA上连接。或者使用MySQL的workbench连接也可以
  • 输入ip地址、端口号、账号密码
    Navicat for MySQL在这里插入图片描述
第六步:远程连接
# 1. 进到MySQL container中
docker exec -it container-id /bin/bash
# 例如,启动后,MySQL的container-id = 147258369,则
docker exec -it 147258369 /bin/bash

# 2. 用root账号登录
mysql > mysql -uroot -proot

# 3. 修改权限
mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' 

# 4. 刷新
mysql > flush privileges;

至此,docker安装MySQL,并且使用本机连接的整个过程就完成了。
其他项目中可能会用到的工具:redis、MongoDB、solace/rabbitMQ等。。都大同小异。
接下来会搭配上一章的Gitlab,并且结合这个MySQL,进行项目开发。

其他

从VirtualBox到Docker到Gitlab的安装
Gitlab CICD官网翻译
MySQL安装 & 使用
JDK安装 & 版本查看
中间件Solace pubsub+安装时抛time out
Upsource安装 & 使用
Docker安装Gitlab runner
Docker部署Gitlab,ssh端口不用22的解决方法
Docker部署Gitlab,http端口不用80的解决方法
Gitlab runner的注册 & 使用
Upsource集成Gitlab的身份验证

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐