本文记录了我常用的容器服务的部署配置,为便于服务迁移,所有持久化数据均存储在当前目录下。对于配置较为复杂的服务,会单独详细说明。
Alist
警告:alist 最后的安全版本为 v3.40.0,请勿部署更高版本
services: alist: image: xhofe/alist:v3.40.0 container_name: alist volumes: - ./data/data:/opt/alist/data - ./data/mnt:/mnt/data environment: - USER_UID=${USER_UID} - USER_GID=${USER_GID} ports: - "5244:5244" restart: unless-stopped
|
Drone
Drone 是一个基于容器的持续集成平台,支持与 Gitea 等代码托管平台集成。
services: drone-server: container_name: ${DRONE_SERVER_CONTAINER_NAME} image: ${DRONE_SERVER_IMAGE} ports: - ${DRONE_SERVER_PORT_MAPPING} volumes: - ${DRONE_SERVER_DATA_VOLUME} environment: - DRONE_GITEA_SERVER=${GITEA_SERVER_URL} - DRONE_GITEA_CLIENT_ID=${GITEA_CLIENT_ID} - DRONE_GITEA_CLIENT_SECRET=${GITEA_CLIENT_SECRET} - DRONE_RPC_SECRET=${DRONE_RPC_SECRET} - DRONE_SERVER_HOST=${DRONE_SERVER_HOST} - DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO} - DRONE_USER_CREATE=username:${DRONE_ADMIN_USERNAME},admin:true restart: ${RESTART_POLICY}
docker-runner: container_name: ${DRONE_RUNNER_CONTAINER_NAME} image: ${DRONE_RUNNER_IMAGE} ports: - ${DRONE_RUNNER_PORT_MAPPING} depends_on: - drone-server volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - DRONE_RPC_PROTO=${DRONE_RPC_PROTO} - DRONE_RPC_HOST=${DRONE_RPC_HOST} - DRONE_RPC_SECRET=${DRONE_RPC_SECRET} - DRONE_RUNNER_CAPACITY=${DRONE_RUNNER_CAPACITY} - DRONE_RUNNER_NAME=${DRONE_RUNNER_NAME} restart: ${RESTART_POLICY}
|
# Drone Server Configuration DRONE_SERVER_CONTAINER_NAME=drone-server DRONE_SERVER_IMAGE=drone/drone:2 DRONE_SERVER_PORT_MAPPING=8082:80 DRONE_SERVER_DATA_VOLUME=./data:/data RESTART_POLICY=unless-stopped
# Gitea Integration GITEA_SERVER_URL=https://xxxx.com GITEA_CLIENT_ID=xxxxx GITEA_CLIENT_SECRET=xxxx
# Drone Server Settings DRONE_RPC_SECRET=xxxx DRONE_SERVER_HOST=xxxx DRONE_SERVER_PROTO=https DRONE_ADMIN_USERNAME=xxxx
# Drone Runner Configuration DRONE_RUNNER_CONTAINER_NAME=docker-runner DRONE_RUNNER_IMAGE=drone/drone-runner-docker:1 DRONE_RUNNER_PORT_MAPPING=7080:3000
# Drone Runner Settings DRONE_RPC_PROTO=https DRONE_RPC_HOST=xxxx DRONE_RUNNER_CAPACITY=2 DRONE_RUNNER_NAME=docker-runner-1
|
Gitea
Gitea 是一个轻量级的 Git 代码托管服务,提供了完整的代码管理功能。
services: server: image: docker.io/gitea/gitea:1.22.6 container_name: gitea env_file: - .env volumes: - ./data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro environment: - USER_UID=${USER_UID} - USER_GID=${USER_GID} ports: - "3000:3000" - "22:22" restart: unless-stopped
|
Vaultwarden
Vaultwarden 是 Bitwarden 服务器的非官方实现,提供密码管理服务。
services: vaultwarden: image: vaultwarden/server:1.33.2-alpine container_name: "vaultwarden" ports: - "10086:80" volumes: - ./data:/data environment: USER_UID: ${USER_UID} USER_GID: ${USER_GID} SIGNUPS_ALLOWED: "true" restart: always
|