https://www.cnblogs.com/w-yu-chen/p/17078793.html
Docker 安装教程_docker安装包_小白学CS的博客-优快云博客
Docker最全入门教程,保证能够快速入门 - 知乎 (zhihu.com)
Docker进阶(一):docker -v目录挂载_No Silver Bullet的博客-优快云博客140
入门教程
# 格式
docker run [参数] [镜像名称] [运行容器的启动命令]
# 参数
-d : 以守护进程的方式运行一个容器
docker run -d [镜像名称] [cmd]
--name : 指定容器的名称
docker run -d --name [容器名称] [镜像的名称] [cmd]
-p : 指定端口映射
docker run -d -p 宿主主机端口:容器内端口 [镜像名称] [cmd]
-P :随机端口映射
docker run -d -P [镜像名称] [cmd]
-i : 打开标准输出
-t : 创建一个伪终端
docker run -it [镜像名称] [cmd]
-v : 挂载目录到容器中
docker run -v 宿主主机目录:容器内目录 [镜像名称] [cmd]
--rm : 容器生命周期结束时立即删除
docker run --rm [镜像名称] [cmd]
-e : 在容器中创建一个环境变量
docker run -e NAME=Centos -d [镜像名称] [cmd]
--link : 连接上一个容器,实现网络互通
docker run --link 被连接的容器的名称:连接别名 [镜像名称] [cmd]
-h : 设置容器主机名
docker run -h "主机名" [镜像名称] [cmd]
# docker run 运行流程
1、检查本地是否用指定镜像,如果没有则去对应的仓库下载镜像
2、启动容器,如果指定了命令则使用指定的命令,如果没有则使用默认的命令
3、返回容器ID
[root@localhost /]# docker run \
--restart=always --privileged=true \
-p 3306:3306 --name common-mysql8 \
-v /mnt/common/mysql/conf:/etc/mysql/conf.d \
-v /mnt/common/mysql/logs:/logs \
-v /mnt/common/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0(镜像名称)