Docker安装MySQL镜像的详细步骤(适合新手小白)
目录
- 前言
- 安装
- 1.访问docker镜像仓库官网
- 2.找到对应的版本,复制右侧的命令即可
- 3.查看镜像
- 4.启动简单的mysql例子
- 5.启动完整的MySQL例子
- 6.查看运行容器
- 7.授权
- 8.用Navicat工具连接
- 拓展:docker离线部署前端镜像
- 镜像打包
- 1.拉取前端镜像
- 2.将镜像打包为tar文件
- 加载镜像包
- 启动容器
- nginx配置文件
- 进入容器
前言
自从用了Docker之后,发现装东西是真的香,不用在自己根据下载压缩包一个个的去解压、执行、配置环境等等操作。想要啥直接就用Docker直接即编程拿即用,灰常的舒服啊。话不多说,正式开干,直接开始安装步骤。以下所有的安装前提是你装了Docker引擎了,不要告诉我连Docker基本环境都没安装。
安装
1.访问docker镜像仓库官网
找到MySQL,这里我是用5.7版本来给大家演示。
https://hub.docker.com/
2.找到对应的版本,复制右侧的命令即可
#将命令放在linux上敲击回车即可 docker pull mysql:5.7
3.查看镜像
等拉取好了镜像之后,docker images
查看一下镜像是否拉取成功。
4.启动简单的MySQL例子
如果只是单纯的想启动MySQL看看,可以直接配置好密码即可
#docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag docker run -p 3306:3306 --name sample-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
5.启动完整的MySQL例子
有些时候,我们会想把MySQL的存储data文件、存储配置文件
挂载出来,所以用以下更全的会相对好一些,这样重启容器也不会造成丢失数据。就是在基础的启动命令上加一些挂载命令
docker run -p 3306:3306 --name sample-mysql -e MYSQL_ROOT_PASSWORD=123456 -androidv /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql -d mysql:5.7
/mydata/mysql/log
: 自己宿主机上的一个目录路径 映射 容器中的 /var/log/mysql
/mydata/mysql/data
:自己宿主机上的一个目录路径 映射 容器中的 /var/lib/mysql
/mydata/mysql/conf
:自己宿主机上的一个目录路径 映射 容器中的 /etc/mysql
6.查看运行容器
使用docker ps
查看刚才的容器是否运行起来
这时候MySQL其实就安装成功啦!
7.授权
可以跳过这一步,直接用步骤8也可以。
#进入MySQL容器中 docker exec -it sample-mysql /bin/bash #登录MySQL mysql -uroot -p123456 #授权 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
8.用Navicat工具连接
拓展:docker离线部署前端镜像
镜像打包
1.拉取前端镜像
docker pull <registry-url>/<namespace>/<image-name>:<tag>
2.将镜像打包为tar文件
`docker save -o frontend_版本号.tar frontend:版本号`
加载镜像包
进入离线环境,将tar包加载为镜像
docker load LTAQP-i frontend_版本号.tar
加载后可以通过docker images
查看镜像id
启动容器
镜像加载后,可以启动该容器:
docker run --name frontend -p 80:80 \ -v /etc/nwww.devze.comginx/conf.d:/etc/nginx/conf.d:ro \ -d [frontend 镜像id]
-p: 映射容器端口到主机端口,格式为<主机端口>:<容器端口> -d: 后台运行 -v: 挂载卷,此处挂载配置文件
容器启动后就可以通过外部ip访问该ng服务了。
nginx配置文件
一般前端镜像会带一个nginx,如果有一些转发的配置项,可以通过挂载卷的方式挂载nginx配置文件:
提前准备好nginx配置文件,上面demo中,将ng配置放到了主机的/etc/nginx/conf.d/default.conf中。
server { listen *:80; server_name *.bressanone.fun; client_max_body_size 1G; location / { root /dist/; index index.html index.htm; try_files $uri $uri/ /index.html; gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 9;http://www.devze.com gzip_types text/plain application/x-Javascript application/json text/css text/javascript application/x-httpd-php image/jpeg image/gif image/png application/javascript; gzip_vary on; } location ^~/api/ { proxy_pass http://后端服务/api/; proxy_connect_timeout 60s; proxy_read_timeout 120s; proxy_send_timeout 120s; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto http; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; } }
进入容器
可以通过 exec命令进入容器
docker exec -it frontend /bin/bash
以上就是Docker安装MySQL镜像的详细步骤(适合新手小白)的详细内容,更多关于Docker安装MySQL镜像的资料请关注编程客栈(www.devze.com)其它相关文章!
精彩评论