0、什么是docker
一、安装docker
#切换到源所在目录
cd /etc/yum.repos.d/
#下载docker的yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#列出yum源
yum repolist
#安装docker
yum -y install docker-ce
二、启动和镜像加速
阿里容器镜像服务
可以上述链接中申请自己的加速地址。
# 启动Docker
systemctl start docker
#查看启动状态
systemctl status docker
# 设置开机自启
systemctl enable docker
# 设置开机不自启
systemctl disable docker
#查看docker开机启动是否成功;enadled 0 为设置成功
systemctl is-enabled docker;echo $?
#配置镜像加速,推荐阿里源
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["你自己的地址"]
}
EOF
systemctl daemon-reload
systemctl restart docker
三、常用命令
docker images:列出所有镜像
docker search [image]:搜索 Docker 镜像
docker pull [image]:拉取指定镜像
docker rmi [image]:删除指定镜像
#容器命令
docker ps:列出当前所有正在运行的容器
docker ps -a:列出所有容器,包括已经停止的容器
docker create [image]:创建一个新的容器,但不启动它
docker start [container]:启动一个容器
docker stop [container]:停止一个容器
docker rm [container]:删除一个容器
docker exec -it [container] [command]:在运行中的容器中执行命令
#其他命令
docker info:显示 Docker 系统信息
docker version:显示 Docker 版本信息
docker logs [container]:查看容器的日志
docker network ls:列出 Docker 网络
docker network create [network]:创建一个新的 Docker 网络
docker network connect [network] [container]:将容器连接到指定的 Docker 网络
docker network disconnect [network] [container]:将容器从指定的 Docker 网络中断开连接
四、创建并配置MySQL
#创建容器并映射配置文件
docker run --name mysql2 --restart=always --privileged=true \
-v /usr/local/mysql/data:/var/lib/mysql \
-v /usr/local/mysql/conf.d:/etc/mysql/conf.d \
-v /etc/localtime:/etc/localtime:ro \
-e MYSQL_ROOT_PASSWORD=123456789 -p 3307:3306 -d mysql:latest
注:启动改名为mysql2,从容器里面的3306端口,映射到宿主机的3307端口,原始密码改为123456。
-e :设置环境变量
-v:绑定一个卷
-d:后台运行容器,并返回容器ID
–name:为容器指定一个名称
–restart:启动类型为开机自启
–privileged:获取权限
#简单运行一个docker的mysql2
docker run --name mysql2 --restart=always --privileged=true \
-e MYSQL_ROOT_PASSWORD=123456789 -p 3307:3306 -d mysql:latest
#查询配置信息容器mysql
docker inspect mysql
RestartPolicy (重启策略)是否为always
#将容器mysql2改为不自动重启
docker update --restart=no mysql2