Sto cercando di eseguire un Dockerized Play app su OS X tramite docker-compose 1.1.0/boot2docker 1.5.0. Tuttavia, in realtà non funziona (scusate il gioco di parole) ...Come faccio a rendere mobile il docker su OS X con un'app Play?
Il problema è che l'app deve essere eseguita con uno pseudo TTY (fornito da Docker), e questo fa sì che hang2docker si blocchi durante il tentativo di collegamento .
ho eseguire l'applicazione, attraverso docker-compose up
, e si blocca come illustrato di seguito:
> docker-compose up
Recreating exampleapp_web_1...
Attaching to exampleapp_web_1
Tuttavia, se corro direttamente l'applicazione, senza finestra mobile-composizione, funziona:
> docker rm exampleapp_web_1 ; docker run -p 9000:9000 -ti --name exampleapp_web_1 -v `pwd`:/code -v `pwd`/.docker_home:/root exampleapp_web
[info] Loading project definition from /code/project
[info] Set current project to example-app (in build file:/code/)
--- (Running the application, auto-reloading is enabled) ---
[info] play - Listening for HTTP on /0:0:0:0:0:0:0:0:9000
(Server started, use Ctrl+D to stop and go back to the console...)
Come faccio a rendere il lavoro di docker-compose nel mio scenario?
finestra mobile-compose.yml
web:
build: .
command: run
ports:
- "9000:9000"
volumes:
- .:/code
- .docker_home:/root
stdin_open: true
tty: true
Dockerfile
FROM aknudsen/play-with-node
MAINTAINER Arve Knudsen <[email protected]>
COPY ./ /code
WORKDIR /code
EXPOSE 9000
ENTRYPOINT ["sbt"]
CMD ["run"]
Output dettagliato da docker-compose up
> docker-compose --verbose up
Compose version 1.1.0
Docker base_url: https://192.168.59.103:2376
Docker version: KernelVersion=3.18.5-tinycore64, Arch=amd64, ApiVersion=1.17, Version=1.5.0, GitCommit=a8a31ef, Os=linux, GoVersion=go1.4.1
docker containers <- (all=True)
docker containers -> (list with 3 items)
Creating exampleapp_web_1...
docker containers <- (all=True)
docker containers -> (list with 3 items)
docker images <- (name=u'exampleapp_web')
docker images -> (list with 1 items)
docker create_container <- (tty=True, name=u'exampleapp_web_1', image=u'exampleapp_web', stdin_open=True, environment={}, command='run', volumes={u'/code': {}, u'/root': {}}, detach=False, ports=[u'9000'])
docker create_container -> {u'Id': u'dc0ebc7e34ea8793023a968725ab696e1a3d60341105e84e81ace776952f55d8',
u'Warnings': None}
docker inspect_container <- (u'dc0ebc7e34ea8793023a968725ab696e1a3d60341105e84e81ace776952f55d8')
docker inspect_container -> {u'AppArmorProfile': u'',
u'Args': [u'run'],
u'Config': {u'AttachStderr': True,
u'AttachStdin': True,
u'AttachStdout': True,
u'Cmd': [u'run'],
u'CpuShares': 0,
u'Cpuset': u'',
u'Domainname': u'',
u'Entrypoint': [u'sbt'],
...
docker start <- (u'dc0ebc7e34ea8793023a968725ab696e1a3d60341105e84e81ace776952f55d8', links=[], cap_add=None, restart_policy=None, dns_search=None, network_mode=u'bridge', binds={u'/Users/arve/Projects/example-app/.docker_home': {u'bind': u'/root', u'ro': False}, u'/Users/arve/Projects/example-app': {u'bind': u'/code', u'ro': False}}, dns=None, volumes_from=[], port_bindings={u'9000': [u'9000']}, cap_drop=None, privileged=False)
docker start -> None
docker containers <- (all=False)
docker containers -> (list with 2 items)
Attaching to exampleapp_web_1
docker attach <- (u'dc0ebc7e34ea8793023a968725ab696e1a3d60341105e84e81ace776952f55d8', stderr=1, logs=1, stream=1, stdout=1)
docker attach -> <generator object _multiplexed_response_stream_helper at 0x1062db2d0>
Log di contenitore Docker
> docker logs exampleapp_web_1
[info] Loading project definition from /code/project
[info] Set current project to example-app (in build file:/code/)
--- (Running the application, auto-reloading is enabled) ---
[info] play - Listening for HTTP on /0:0:0:0:0:0:0:0:9000
(Server started, use Ctrl+D to stop and go back to the console...)
GitHub Problema
C'è un GitHub issue che sembra descrivere questo problema.
è possibile eseguire comporre in modalità dettagliata. puoi anche includere il tuo registro docker? – booyaa
@booyaa Inclusi entrambi adesso, grazie. – aknuds1
odd vedere nessun errore, dovrà fare qualche test, presumibilmente un test di successo è se è possibile raggiungere il sito su http: // b2d-ip: 9000/usando '' 'docker-compose'''? – booyaa