Docker 安装与配置 ¶
1. 基础环境准备 ¶
1.1 更新系统并安装必备软件 ¶
apt-get update && apt-get install -y wget vim
1.2 安装 Docker ¶
- 非大陆地区安装 Docker
wget -qO- get.docker.com | bash - 国内地区安装 Docker(使用镜像源加速)
curl -sSL https://get.daocloud.io/docker | sh
1.3 启动 Docker 服务 ¶
systemctl start docker
1.4 设置 Docker 开机自启 ¶
systemctl enable docker
1.5 安装 Docker Compose ¶
apt-get install -y docker-compose
2. Docker 配置优化 ¶
2.1 修改 Docker 配置文件 ¶
- 配置内容:包括日志文件大小限制、启用 IPv6 支持等。
cat > /etc/docker/daemon.json << EOF { "log-driver": "json-file", "log-opts": { "max-size": "20m", "max-file": "3" }, "ipv6": true, "fixed-cidr-v6": "fd00:dead:beef:c0::/80", "experimental": true, "ip6tables": true } EOF
2.2 配置镜像加速(国内用户推荐) ¶
-
镜像加速配置:通过配置
registry-mirrors加速镜像拉取。{ "registry-mirrors": [ "https://hub.renzhen.vip", "https://docker.lfh.ee", "https://docker.lfh.fan", "https://proxy.1panel.live", "https://docker.1panel.top", "https://hub.rat.dev", "https://docker.1panel.dev", "https://docker.amingg.com", "https://hub.nat.tf", "https://hub1.nat.tf", "https://hub2.nat.tf" ] } -
镜像加速原理:
- Docker 会按照配置文件中镜像源的顺序依次尝试拉取镜像。
- 如果当前镜像源不可用或响应缓慢,Docker 会自动切换到下一个镜像源。
- 建议:将最可靠、最快的镜像源放在列表最前面。
-
查看镜像加速配置是否生效:
systemctl daemon-reload systemctl restart docker docker info | grep -A 1 Mirrors -
镜像源列表查询:可以通过以下链接查看某个镜像源的可用镜像列表。
https://docker.lfh.fan/v2/_catalog
2.3 重启 Docker 服务以应用配置 ¶
systemctl restart docker
3. Docker 清理与维护 ¶
3.1 移除未使用的镜像 ¶
- 清理所有未被使用的镜像:
docker image prune -a
3.2 清理 Docker 磁盘垃圾 ¶
- 清理无用的容器、网络、镜像和卷:
docker system prune --volumes - 注意:此命令会删除所有未使用的资源,请确保没有重要数据未备份。
4. Docker 镜像构建 ¶
4.1 通用 Dockerfile 示例 ¶
以下是一个通用的两阶段构建 Dockerfile,适用于基于 Node.js 的前端项目:
# 构建阶段
FROM node:lts-alpine as build-stage
LABEL maintainer=lifenghua<jxzzlfh@gmail.com>
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
# 生产阶段
FROM nginx:stable-alpine as production-stage
COPY --from=build-stage /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
4.2 构建特定项目镜像 ¶
-
构建 Koodo-reader 镜像:
docker build -t jxzzlfh/koodo-reader:1.5.4 . docker build -t jxzzlfh/koodo-reader:latest . -
构建 PicX 镜像:
- 步骤:
- 下载代码(对应版本 1.4.1):
git clone https://github.com/XPoet/picx.git # 或者使用镜像站点加速 git clone https://hub.fastgit.org/XPoet/picx.git - 进入代码目录:
cd picx - 将上述 Dockerfile 放入代码目录中。
- 构建镜像:
docker build -t jxzzlfh/picx:latest .
- 下载代码(对应版本 1.4.1):
- 步骤:
-
构建 LibreChat 镜像:
docker build -t jxzzlfh/librechat:latest . -
构建 Linkding 镜像:
docker build -t jxzzlfh/linkding:latest . -
构建 Cloudflare AI Web 镜像:
docker build -t jxzzlfh/cloudflare-ai-web:latest .
5. Docker 网络与调试 ¶
5.1 查看 Docker 容器内部 IP ¶
- 查看 Docker 网络接口 IP:
ip addr show docker0
6. 注意事项与补充说明 ¶
- 镜像加速配置:国内用户强烈建议配置镜像加速,以提高镜像拉取速度。
- Docker Compose:如果需要管理多容器应用,建议安装 Docker Compose。
- 清理操作风险:执行
docker system prune --volumes时,请确保没有重要的未挂载卷,否则可能导致数据丢失。 - IPv6 配置:启用 IPv6 支持时,确保主机网络环境支持 IPv6,否则可能导致容器网络问题。