diff --git a/docker-compose.ci.yml b/docker-compose.ci.yml new file mode 100644 index 0000000000000000000000000000000000000000..e15e9ac8a9929bdb6671db356728830bdc0d804a --- /dev/null +++ b/docker-compose.ci.yml @@ -0,0 +1,7 @@ +version: "3" +services: + web: + build: ./solar + image: ${REGISTRY}/cn-tsn/project/solar/web:latest + volumes: + - ./solar:/code \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000000000000000000000000000000000000..9a7c0f1d8772e7a313a2663e3c77a12ae740f5d0 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,44 @@ +version: '3' + +services: + solar: + container_name: solar + build: ./solar + restart: always + command: sh -c "pipenv run python manage.py collectstatic --noinput && pipenv run uwsgi --socket=:9000 --module=solar.wsgi:application --py-autoreload=1" + volumes: + - ./solar:/code + networks: + - webnet + + nginx: + container_name: nginx + image: nginx:latest + restart: always + depends_on: + - solar + - certbot + volumes: + - ./nginx/production/:/etc/nginx/conf.d + - ./solar/django_static/:/code/django_static + - ./solar/media/:/code/media + - ./fairing/build:/var/www/fairing + - ./nginx/certbot/conf:/etc/letsencrypt + - ./nginx/certbot/www:/var/www/certbot + networks: + - webnet + ports: + - "80:80" + - "443:443" + command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'" + + certbot: + image: certbot/certbot:latest + restart: unless-stopped + volumes: + - ./nginx/certbot/conf:/etc/letsencrypt + - ./nginx/certbot/www:/var/www/certbot + entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'" + +networks: + webnet: