blob: 25d728bd51606fc30d0a18f0d962851805a2913e [file] [log] [blame]
# Copyright 2021 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
version: "3"
services:
##############################################################################drone
conf_creator:
container_name: conf-creator
image: ${SATLAB_REGISTRY_URI:-gcr.io/satlab-images}/conf_creator:${CONF_CREATOR:-release}
labels:
- "skip.while.pruning.docker.system=yes"
volumes:
- nginx_configs:/mnt/conf/nginx:rw
##############################################################################drone
drone:
container_name: drone
image: &drone_image ${SATLAB_REGISTRY_URI:-gcr.io/satlab-images}/drone:${SATLAB_DRONE:-release}
environment:
- DOCKER_DRONE_QUEEN_SERVICE=drone-queen-prod.appspot.com
- DOCKER_DRONE_SWARMING_SERVER_URL=https://chromeos-swarming.appspot.com
- DOCKER_DRONE_ADMIN_SERVICE=chromeos-skylab-bot-fleet.appspot.com
- DOCKER_DRONE_INVENTORY_ENVIRONMENT=prod
- DOCKER_DRONE_TKO_INSTANCES=google.com:chromeos-lab:us-central1:tko
- DOCKER_DRONE_AGENT_DUT_CAPACITY=10
- DOCKER_DRONE_LOG_PROJECT=drone-queen-prod
- DOCKER_DRONE_IMAGE=*drone_image
- DOCKER_DRONE_INVENTORY_SERVICE=cros-lab-inventory.appspot.com
- DOCKER_DRONE_UFS_SERVICE=ufs.api.cr.dev
- DOCKER_DRONE_AGENT_HIVE=${DRONE_HOSTNAME:-satlab-drone}
- DOCKER_DRONE_LABPACK_DIR=/usr/local/labpack
- DOCKER_DRONE_CACHESERVER_IP=192.168.100.1
- SERVOD_CONTAINER_LABEL=release
- DOCKER_SERVOD_DEBUG_MODE=0
- DOCKER_DEFAULT_NETWORK=default_satlab
privileged: true
hostname: ${DRONE_HOSTNAME:-satlab-drone}
restart: always
volumes:
- ssp:/usr/local/autotest/containers/ssp_volume:rw
- service_accounts:/creds/service_accounts:rw
- /var/run/docker.sock:/var/run/docker.sock:rw
- /var/run/docker.sock:/var/docker.sock:rw
- servod_profile:/var/servod/profile/:rw
# TODO (prasadv): Make static ip addresses higher numbers
# so that the lower number are available for dhcp to assign it
# to dynamically created containers such as servod container
networks:
satlab:
ipv4_address: 192.168.100.10
dns:
- 192.168.100.51
depends_on:
- dns
- satlab_secrets
##############################################################################dns
dns:
container_name: dns
image: ${COMMON_CORE_URI:-gcr.io/chromeos-partner-moblab}/moblab-dns:${DNS:-release}
restart: unless-stopped
volumes:
- logs:/var/log/
- dut_hosts:/etc/dut_hosts:rw
command: ['/usr/sbin/dnsmasq', '--no-daemon', '-u', 'moblab', '-g', 'moblab', '-H', '/etc/dut_hosts/hosts']
networks:
satlab:
ipv4_address: 192.168.100.51
##############################################################################gsa_server
gsa_server:
container_name: gsa_server
image: ${SATLAB_REGISTRY_URI:-gcr.io/satlab-images}/gsa_server:${GSA_SERVER:-release}
environment:
- BOTO_CONFIG=/home/chromeos-test/boto_key/.boto
volumes:
- /var/run/docker.sock:/var/run/docker.sock:rw
- images:/home/chromeos-test/images
- boto_file:/home/chromeos-test/boto_key
command: ['python', '-m', 'gs_archive_server', '-p', '8887', '-c', '192.168.100.3:8082', '-b', '0.0.0.0']
networks:
satlab:
ipv4_address: 192.168.100.2
dns:
- 192.168.100.51
depends_on:
- dns
- satlab_secrets
##############################################################################ngix
nginx:
container_name: nginx
image: ${SATLAB_REGISTRY_URI:-gcr.io/satlab-images}/nginx:${NGINX:-release}
volumes:
- /var/run/docker.sock:/var/run/docker.sock:rw
- /var/logs/nginx:/var/log/nginx
- cache:/var/cache/nginx
- nginx_configs:/mnt/conf/nginx:ro
ports:
- "8082:8082"
command: ['nginx', '-g', 'daemon off;', '-c', '/mnt/conf/nginx/nginx.conf']
networks:
satlab:
ipv4_address: 192.168.100.3
dns:
- 192.168.100.51
extra_hosts:
- "cacheserver:192.168.100.1"
depends_on:
- conf_creator
- dns
- gsa_server
##############################################################################satlab-secrets
satlab_secrets:
container_name: satlab_secrets
image: ${SATLAB_REGISTRY_URI:-gcr.io/satlab-images}/satlab_secrets:${SATLAB_SECRETS:-release}
labels:
- "skip.while.pruning.docker.system=yes"
volumes:
- service_accounts:/creds/service_accounts
- boto_file:/boto_file
##############################################################################volumes
openssh_server:
container_name: openssh_server
image: ${SATLAB_REGISTRY_URI:-gcr.io/satlab-images}/openssh_server:${OPENSSH_SERVER:-release}
network_mode: host
cap_add:
- NET_ADMIN
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- SUDO_ACCESS=false
- USER_NAME=chromeos-test
ports:
- "2222:2222"
dns:
- 192.168.100.51
##############################################################################volumes
volumes:
logs: {}
images: {}
cache: {}
dut_hosts: {}
nginx_configs: {}
service_accounts: {}
boto_file: {}
servod_profile: {}
satlab_keys:
external: True
ssp: {}
##############################################################################networks
networks:
satlab:
ipam:
driver: default
config:
- subnet: "192.168.100.0/24"