Docker命令集
安装
yum -y install docker
# 测试
docker run hello-world
#版本
docker version
镜像
镜像加速
#阿里云
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://45p7qdl5.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
镜像管理
#搜索中央仓库(查)
docker search java
#查看已安装镜像
docker images
#下载镜像(增)
docker pull java
#docker push ${auchor}/${imageName}
#删除本地镜像(删)
docker rmi java
容器
容器管理
#启动容器(没有镜像会自己去下载)(增)
docker run java /bin/echo 'hello world'
#根据容器id启动
docker start ${CONTAINER ID}
#根据容器id重启
docker restart ${CONTAINER ID}
#启动参数
-d 后台启动
-P 随机端口映射
-p 指定端口映射
-network 网络模式
#查看所有容器(查)
docker ps
#检测运行镜像的路径
docker inspect ${containerName}
#停止容器(停)
docker stop ${CONTAINER ID}
#强制停止
docker kill ${CONTAINER ID}
#进入容器(进入)
docker attach ${CONTAINER ID}
#删除容器
docker rm ${CONTAINER ID}
#操作容器
#复制东西到容器(nginx)
docker cp index.html bbacf3758232://usr/share/nginx/html
#提交镜像
docker commit -m 'fun' ${CONTAINER ID} ${imageName}
Dockerfile
Dockerfile操作
通过Dockerfire文件定制镜像
#新建一个dockerfile
touch Dockerfile
vim Dockerfile
#写入内容
FROM ${baseImage}:latest
MAINTAINER ${author}
${操作}
#如
FROM alpine:latest
MAINTAINER Chiu
CMD echo "hello Docker!"
#编译Dockerfire
docker build -t ${imageName} .
#如
docker build -t hello_docker .
Dockerfile语法
WORKDIR 指定路径
MAINTAINER 维护者
ENV 设定环境变量
ENTRYPOINT 容器入口
USER 指定用户
VOLUME 挂在卷
docker-compose
多容器app(通过配置yuml文件配置多个容器)
up 启动服务
stop 停止服务
rm 删除服务中的各个容器
logs 观察各个容器的日志
ps 列出服务相关的容器