Docker 实战速查笔记

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

以上内容整理自个人运维笔记,供快速查阅。