2016-06-15 10 views
0

Ich versuche Cookiecutter-Django zu bewerten, bis jetzt ist es ein großartiges Werkzeug, um ein Projekt zu starten. Alles läuft reibungslos, außer wenn ich versuchte, docker mit certbot zu verwenden, ich habe diesen Fehler.fehlende Umgebungsvariablen nginx Container

nginx_1   | 2016/06/15 07:55:36 [emerg] 1#1: invalid port in upstream "___LETSENCRYPT_IP___:___LETSENCRYPT_PORT___" in /etc/nginx/nginx.conf:42 

die start.sh enthält

sed -i "s/___LETSENCRYPT_IP___/$LETSENCRYPT_PORT_80_TCP_ADDR/g" /etc/nginx/nginx.conf 
sed -i "s/___LETSENCRYPT_PORT___/$LETSENCRYPT_PORT_80_TCP_PORT/g" /etc/nginx/nginx.conf 

ich hier kein Guru bin, aber ich kann sehen, dass das Skript mit Umgebungsvariablen verweist, aber wenn ich versucht, die Umweltvariablen in inspizieren nginx container, ich habe nichts mit letsencrypt zu tun.

[[email protected]]# docker-compose run nginx bash 
Starting tbpcsuite_certbot_1 
Starting tbpcsuite_postgres_1 
Starting tbpcsuite_redis_1 
Starting tbpcsuite_django_1 
[email protected]:/# set 
BASH=/bin/bash 
BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extquote:force_fignore:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath 
BASH_ALIASES=() 
BASH_ARGC=() 
BASH_ARGV=() 
BASH_CMDS=() 
BASH_LINENO=() 
BASH_SOURCE=() 
BASH_VERSINFO=([0]="4" [1]="3" [2]="30" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") 
BASH_VERSION='4.3.30(1)-release' 
COLUMNS=197 
DIRSTACK=() 
EUID=0 
GROUPS=() 
HISTFILE=/root/.bash_history 
HISTFILESIZE=500 
HISTSIZE=500 
HOME=/root 
HOSTNAME=b7d12c245b86 
HOSTTYPE=x86_64 
IFS=$' \t\n' 
LINES=73 
MACHTYPE=x86_64-pc-linux-gnu 
MAILCHECK=60 
MY_DOMAIN_NAME=www.192.168.33.10.xip.io 
NGINX_VERSION=1.11.1-1~jessie 
OPTERR=1 
OPTIND=1 
OSTYPE=linux-gnu 
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 
PIPESTATUS=([0]="1") 
PPID=0 
PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ ' 
PS2='> ' 
PS4='+ ' 
PWD=/ 
SHELL=/bin/bash 
SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor 
SHLVL=1 
TERM=xterm 
UID=0 
_=']' 

Ich bin verloren, jede Anleitung werde ich zu schätzen wissen.

Danke,

+0

Inhalt der nginx-Datei in Zeile 42 anzeigen '/etc/nginx/nginx.conf: 42' –

+0

proxy_pass http: // ___ LETSENCRYPT_IP___: ___LETSENCRYPT_PORT___; – leppy

+0

in meinem Verständnis die start.sh sollte diese Zeile mit $ LETSENCRYPT_IP und $ LETSENCRYPT_PORT ersetzen, aber Umweltvariablen hat sie nicht. – leppy

Antwort

1

Sieht aus wie Sie neue Netzwerke können unter Verwendung von Docker, die die Umgebungsvariablen für verknüpfte Container deprecates. Environment variables will only be populated if you’re using the legacy version 1 Compose file format.

konnte ich meine, indem zum Laufen bringen:

  • ___LETSENCRYPT_IP___ zu certbot
  • ___LETSENCRYPT_PORT___ zu 80
  • ___LETSENCRYPT_HTTPS_IP___ zu certbot
  • ___LETSENCRYPT_HTTPS_PORT___-443

in beiden nginx.conf und nginx-secure.conf.

Es gibt eine Diskussion und eine offene Pull-Anfrage diesbezüglich in der Cookiecutter-Django Repo auch, möglicherweise mehr Informationen.