前提・実現したいこと
- Docker-Composeを利用してDjangoを起動しています。
- 証明書としてLet's Encryptを使用しています。
期限が切れそうなので、更新手続きを行いたいです。
- Docker使用以前は、下記のように処理していました。
# Nginx停止 sudo systemctl stop nginx # Let's Encrypt更新 ~/certbot-auto renew # Nginx起動 sudo systemctl start
- Docker利用中の状況では、どのようにLet's Encryptを更新したら良いでしょうか?
docker-compose.yml
yml
1version: '3.7' 2 3services: 4 web: 5 build: 6 context: ./test 7 dockerfile: Dockerfile.prod 8 command: gunicorn test.wsgi:application --bind 0.0.0.0:8000 9 volumes: 10 - static_volume:/home/app/web/staticfiles 11 - media_volume:/home/app/web/mediafiles 12 expose: 13 - 8000 14 env_file: 15 - ./test/.env.prod 16 depends_on: 17 - db 18 celery_worker: 19 command: /bin/sh -c "celery -A test worker -l info " 20 build: 21 context: ./test 22 dockerfile: Dockerfile.prod 23 depends_on: 24 - web 25 - db 26 - redis 27 deploy: 28 replicas: 1 29 restart_policy: 30 condition: on-failure 31 hostname: celery_worker 32 33 celery_beat: 34 build: 35 context: ./test 36 dockerfile: Dockerfile.prod 37 links: 38 - db:db 39 - redis:redis 40 depends_on: 41 - web 42 - db 43 - redis 44 command: /bin/sh -c "celery -A test beat -l INFO --scheduler django_celery_beat.schedulers:DatabaseScheduler" 45 redis: 46 image: 'redis:alpine' 47 hostname: redis 48 db: 49 image: postgres:12.0-alpine 50 volumes: 51 - postgres_data:/var/lib/postgresql/data/ 52 env_file: 53 - ./.env.prod.db 54 nginx: 55 build: ./nginx 56 volumes: 57 - static_volume:/home/app/web/staticfiles 58 - media_volume:/home/app/web/mediafiles 59 - ./nginx:/etc/nginx/conf.d 60 - /etc/letsencrypt:/etc/letsencrypt 61 ports: 62 - 8080:80 63 - 443:443 64 depends_on: 65 - web 66 67volumes: 68 postgres_data: 69 static_volume: 70 media_volume: 71
補足情報(環境)
- Ubuntu Server上のDocker環境で、Nginx・gunicornを用いて起動しています。
お分かりの方、ご教示頂けるとありがたいです。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。