TLDR: È possibile collegare due contenitori al manifest del contenitore?Come collegare container docker su Container VM con un manifest?
Sto provando a portare il Guestbook Sample app from the Google Container Engine docs a container vm. Ho problemi a connettere i due contenitori vms in modo che l'app web possa accedere al servizio redis.
Funziona, se sto usando la riga di comando finestra mobile per l'istanza:
avviare l'istanza e ssh in esso:
gcloud compute instances create guestbook-vm --image container-vm --machine-type g1-small
gcloud ssh guestbook-vm
creare i contenitori:
sudo docker run -d --name redis -p 6379:6379 dockerfile/redis
sudo docker run -d --name guestbook -p 3000:80 --link redis:redis -e "REDIS_MASTER_SERVICE_HOST=redis" -e "REDIS_MASTER_SERVICE_PORT=6379" brendanburns/php-redis
Sto usando il collegamento - per collegare il guestbook al contenitore redis. Questo può essere ottenuto anche con il manifest del contenitore?
questo è il mio comando di avvio:
gcloud compute instances create guestbook-vm --image container-vm --machine-type g1-small --metadata-from-file google-container-manifest=containers.yaml
EDIT: Soluzione da Alex di utilizzare 127.0.0.1 funziona bene, in modo che il containers.yaml destra:
version: v1beta2
containers:
- name: redis
image: dockerfile/redis
ports:
- name: redis-server
containerPort: 6379
hostPort: 6379
- name: guestbook
image: brendanburns/php-redis
ports:
- name: http-server
containerPort: 80
hostPort: 3000
env:
- name: REDIS_MASTER_SERVICE_HOST
value: 127.0.0.1
- name: REDIS_MASTER_SERVICE_PORT
value: 6379
Hai ragione, localhost funziona bene! – Paul