Docker常用命令

安装

yum install -y yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum list docker-ce --showduplicates | sort -r
yum -y install docker-ce
systemctl enable docker #开机启动
systemctl start docker #启动
systemctl restart docker #重新启动
systemctl stop docker #停止

配置 /etc/docker/daemon.json

{
"data-root":"/var/lib/docker", #Docker运行时使用的根路径
"storage-driver":"overlay2",
"insecure-registries": [], #配置docker的私库地址
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"], #镜像加速的地址,增加后在 docker info中可查看。
"bip": "172.91.20.0",
"exec-opts": ["native.cgroupdriver=systemd"],
"live-restore": true
}

镜像命令

systemctl restart docker #重新启动

docker images #查看镜像

docker search nginx #搜索镜像

docker pull nginx #拉取镜像

docker rmi feb5d9fea6a5 #删除镜像

容器命令

docker ps #查看正在运行的容器

docker ps -a   #查看所有的容器

docker run #创建容器
-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;

-d: 后台运行容器,并返回容器ID;

-i: 以交互模式运行容器,通常与 -t 同时使用;

-P: 随机端口映射,容器内部端口随机映射到主机的端口

-p: 指定端口映射,格式为:主机(宿主)端口:容器端口

-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

--name="nginx-lb": 为容器指定一个名称;

--dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;

--dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;

-h "mars": 指定容器的hostname;

-e username="ritchie": 设置环境变量;

--env-file=[]: 从指定文件读入环境变量;

--cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;

-m :设置容器使用内存最大值;

--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;

--link=[]: 添加链接到另一个容器;

--expose=[]: 开放一个端口或一组端口;

--volume , -v: 绑定一个卷

例 1、交互式创建运行容器 docker run -it --name=mynginx nginx:latest /bin/bash
   退出 exit
2、守护创建运行容器 docker run -di --name=mynginx1 nginx:latest
登陆容器 docker exec -it cb011c565fa8 /bin/bash
停止容器 docker stop cb011c565fa8
启动容器 docker start cb011c565fa8
查看容器详情 docker inspect cb011c565fa8
删除容器 docker rm cb011c565fa8


常见应用安装 
mysql:
docker pull mysql:5.7
docker run -di --name=docker_mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=abc123 mysql:5.7
docker exec -it docker_mysql /bin/bash
mysql -uroot -pabc123 --default-character-set=utf8








原文地址:https://www.cnblogs.com/jnba/p/15788371.html