使用 yum 安装(CentOS 7下)
Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 uname -r 命令查看你当前的内核版本
[root@master opt]# uname -r
3.10.0-1160.el7.x86_64
Docker 软件包和依赖包已经包含在默认的 CentOS-Extras 软件源里,安装命令如下:
[root@master opt]# yum -y install docker
启动Docker
[root@master opt]# service docker start
- 1
测试运行 hello-world
[root@master opt]# docker run helloworld
- 1
[root@master opt]# docker -v
- 1
上传docker安装包,本次上传至”/opt/”文件夹下
[root@master opt]# cd /opt
安装包百度网盘路径
链接:https://pan.baidu.com/s/1jiIKufOtoceMeNLdrwTPiw
提取码:yyuu
解压docker安装包
[root@master opt]# tar xzvf docker-20.10.16.tgz
进入docker目录,将目录下的所有文件拷贝至”/usr/bin/”
[root@master opt]# cd docker
[root@master docker]# cp * /usr/bin/
配置docker开机自启动
[root@master docker]# vi /etc/systemd/system/docker.service
#粘贴以下内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
[root@master docker]# chmod +x /etc/systemd/system/docker.service [root@master docker]# systemctl daemon-reload
- 1
- 2
[root@master docker]# systemctl enable docker.service
- 1
启动docker
[root@master docker]# systemctl start docker
测试docker是否安装完成
[root@master docker]# docker -v
查看docker中的镜像
[root@master docker]# docker images
联网情况下搜索mysql镜像
[root@master docker]# docker search mysql
离线的情况下加载mysql镜像
mysql的镜像包
链接:https://pan.baidu.com/s/1GHhsDeSq-PPCunK0lK1tIQ
提取码:1234
[root@master docker]# docker load
使用docker运行mysql
[root@master docker]# docker run -itd --name mysqlname -d --restart=always -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
查看所有docker运行的进程
[root@master docker]# docker ps -a
CONTAINER ID IMAGE COMMAND … PORTS NAMES
1ef22aeaff4c mysql:5.7 “docker-entrypoint.s…” … 33060/tcp, 0.0.0.0:3307->3306/tcp, :::3307->3306/tcp mysqlname
先关闭mysql进程,找到mysql对应的CONTAINER ID
[root@master docker]# docker stop 1ef22aeaff4c
再移除mysql进程
[root@master docker]# docker rm 1ef22aeaff4c
如果想删除镜像
[root@master docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 5.7 14905234a4ed 13 days ago 495MB
找到mysql对应的IMAGE ID,使用docker rei 进行删除
[root@master docker]# docker rmi 14905234a4ed
创建mysql文件夹并打开文件夹
[root@master docker]# mkdir -p /opt/test/mysql
[root@master docker]# cd /opt/test/mysql/
[root@master mysql]#
上传初始化mysql文件:test.sql到/opt/test/mysql下
[root@master mysql]# vi Dockerfile
# 粘贴以下内容到Dockerfile文件中去
FROM mysql:5.7
MAINTAINER dong
ADD ./test.sql /docker-entrypoint-initdb.d/
EXPOSE 3306
构建mysql对象
[root@master mysql]# docker build -t mysql:5.7c .
运行mysql镜像
[root@master mysql]# docker run -d --name myMysql -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=test -p 3307:3306 mysql:5.7c --lower_case_table_names=1