1. 安装 Docker(指定版本)
# CentOS/RHEL yum -y install docker-ce-20.10.9 docker-ce-cli-20.10.9 containerd.io # Ubuntu sudo apt-get install docker-ce docker-ce-cli containerd.io
2. 镜像加速器
sudo mkdir -p /etc/docker
sudo vim /etc/docker/daemon.json
# {"registry-mirrors": ["https://你的加速地址"]}
sudo systemctl daemon-reload
sudo systemctl restart docker
3. 用 Dockerfile 构建镜像
FROM tomcat:9.0.52
ADD jdk-8u131-linux-x64.tar.gz /usr/local/
ADD new-cms.war /usr/local/tomcat/webapps
WORKDIR /usr/local
RUN mv jdk1.8.0_131 /usr/local/java
ENV JAVA_HOME /usr/local/java
ENV JRE_HOME ${JAVA_HOME}/jre
ENV CLASSPATH .:${JAVA_HOME}/lib:${JRE_HOME}/lib
docker build -t 镜像名:标签 .
4. 常用服务一键部署
# Portainer 可视化管理 docker run -d -p 9000:9000 --name portainer --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /app/docker/portainer:/data portainer/portainer-ce # SVN docker run --restart always --name svn -d \ -v /root/dockers/svn:/var/opt/svn -p 3690:3690 garethflowers/svn-server # SonarQube 代码质量 docker run -itd --name sonarqube -p 9001:9000 \ -v /app/sonarqube/conf:/opt/sonarqube/conf \ -v /app/sonarqube/data:/opt/sonarqube/data \ -v /app/sonarqube/logs:/opt/sonarqube/logs sonarqube
5. 镜像导入导出
docker save -o nginx.tar.gz nginx:v2 # 导出 docker load -i nginx.tar.gz # 导入
6. 清理无用镜像
docker image prune -a
以上内容整理自个人运维笔记,供快速查阅。