docker必备命令
初始化
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装docker
sudo yum install -y yum-utils
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
启动
systemctl start docker
查看版本
docker -v
设置自启
systemctl enable docker
配置阿里云镜像,加快速度
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://chqac97z.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
基本命令
镜像操作
创建镜像
sudo docker pull mysql:5.7
查看当前有那些镜像(images)
docker images
删除镜像(images),通过镜像(images)的id来指定删除谁
docker rmi <image id>
想要删除镜像(images)id为的image的话可以用
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
要删除全部镜像(images)的话
docker rmi $(docker images -q)
容器操作
查看当前运行的所有容器
docker ps -a
停止所有容器(container),这样才能够删除其中的images:
docker stop $(docker ps -a -q)
如果想要删除所有容器(container)的话再加一个指令:
docker rm $(docker ps -a -q)
启动容器
docker start 604b7f99b21d
终止容器
docker stop 604b7f99b21d
创建容器
--name指定容器名字
-v目录挂载(内部Linux与外部Linux目录映射)
-p指定端口映射(内部Linux与外部Linux端口映射)
-e设置mysql参数
-d后台运行
sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
详细命令
docker exec :**在运行的容器中执行命令
语法
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:
- **-d