英文版地址
中文版地址
https://docker./
docker仓库地址
/
docker三要素
- 镜像
- 容器
- 仓库
contos7 安装docker
卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
设置仓库
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
yum-config-manager \
--add-repo \
/docker-ce/linux/centos/
安装 Docker Engine-Community
yum install docker-ce docker-ce-cli docker-compose-plugin
启动docker
systemctl start docker
设置镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/ <<-'EOF'
{
"registry-mirrors": [""]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
docker 镜像命令
##搜索镜像
docker search 镜像名
##拉取镜像
docker pull 镜像名
###查看下载的所有镜像
docker images
##查看所有正在运行的镜像 -a 所有正在运行的和历史运行过的,-l 最新运行的 -n 5 最近运行的5个容器
docker ps
docker ps -a
docker ps -l
docker ps -n 5
##删除镜像
docker rmi 镜像名/镜像id
docker rmi $(docker images -q) ## 多个
docker 容器命令
##以交互式运行镜像
docker run -it 镜像名
##以守护进程的方式运行容器
docker run -d 镜像名 /bin/bash -c "while true;echo hello world;sleep 5;done;"
##退出容器,容器停止运行
exit
## 退出容器,容器仍在运行
按ctrl p q
##查看容器运行日记,-t 显示时间 -f 跟随最新日记打印 --tail 数字 显示最后多少条
docker logs -t -f --tail 5 容器id
##重新进行正在运行的容器里面
docker attach 容器id
docker exec -it 容器id /bin/bash
##重新开启已关闭的容器
docker start 容器id
##容器重启
docker restart 容器id
##容器关闭
docker stop 容器id
##删除容器
docker rm 容器id
##删除多个
docker rm $(docker ps -q)
建立一个centos镜像(安装tomcat10 + jdk19)
FROM centos
MAINTAINER yang<yang@>
# 把宿主机当前上下文的拷贝到容器/usr/local/路径下
COPY /usr/local/
# 把java与tomcat添加到容器中
ADD jdk-19_linux-x64_bin. /usr/local
ADD apache-tomcat-10.1. /usr/local
#设置工作访问时候的WORKDIR路径,登录落脚点
ENV MYPATH /usr/local
WORKDIR $MYPATH
#配置java与tomcat环境变量
ENV JAVA_HOME /usr/local/jdk-19.0.2
ENV CLASSPATH $JAVA_HOME/lib/:$JAVA_HOME/lib/
ENV CATALINA_HOME /usr/local/apache-tomcat-10.1.5
ENV CATALINA_BASE /usr/local/apache-tomcat-10.1.5
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_BASE/bin
#容器运行时监听端口
EXPOSE 8080
#启动时运行tomcat
#ENTRYPOINT ["/usr/local/apache-tomcat-10.1.5/bin/"]
#CMD ["/usr/local/apache-tomcat-10.1.5/bin/","run"]
CMD /usr/local/apache-tomcat-10.1.5/bin/ && tail -F /usr/local/apache-tomcat-10.1.5/bin/
运行镜像
docker run -d -p 9080:8080 --name myt10 -v /yanguse/mydockerfile/tomcat10/test:/usr/local/apache-tomcat-10.1.5/webapps/test -v /yanguse/mydockerfile/tomcat10/tomcat10logs:/usr/local/apache-tomcat-10.1.5/logs --privileged=true yangtomcat10