postgresql - Error de Docker: standard_init_linux.go: 185: el proceso del usuario exec no causó "tal archivo o directorio"
elixir docker-compose (1)
Como mencionó, una de las causas podría ser que falta #!/bin/bash
archivo bash #!/bin/bash
en la parte superior.
Otra posible razón podría ser si el archivo se guarda con los finales de línea de Windows (CRLF). Guárdelo con finales de línea de Unix (LF) y se encontrará.
Estoy tratando de configurar mi aplicación elixir-phoenix con la base de datos postgresql para que se ejecute con Docker. Así es como se ve mi Dockerfile:
# ./Dockerfile
# Starting from the official Elixir 1.5.2 image:
# https://hub.docker.com/_/elixir/
FROM elixir:1.5.2
ENV DEBIAN_FRONTEND=noninteractive
# Install hex
RUN mix local.hex
# Install rebar
RUN mix local.rebar
# Install the Phoenix framework itself
RUN mix archive.install https://github.com/phoenixframework/archives/raw/master/phx_new.ez
# Install NodeJS 6.x and the NPM
RUN curl -sL https://deb.nodesource.com/setup_6.x | bash -
RUN apt-get install -y -q nodejs
# Set /lib as workdir
WORKDIR /lib
Y este es mi archivo docker-compose.yml:
web:
build: .
dockerfile: Dockerfile
env_file: .env
command: mix phx.server # Start the server if no other command is specified
environment:
- MIX_ENV=dev
- PORT=4000
- PG_HOST=postgres
- PG_USERNAME=postgres
volumes:
- .:/lib
ports:
- "4000:4000"
links:
- postgres
test:
image: phoenixbootstrap_web
env_file: .env
command: mix test
environment:
- MIX_ENV=test
- PORT=4001
- PG_HOST=postgres
- PG_USERNAME=postgres
volumes_from:
- web
links:
- postgres
postgres:
image: postgres:10.0
ports:
- "5432"
La imagen se construye correctamente, pero cuando intento instalar las dependencias con el siguiente comando:
docker-compose run web mix do deps.get
Me sale estos errores:
standard_init_linux.go:185: exec user process caused "no such file or directory"
PD: Encontré un par de respuestas como esta , señalando una línea faltante al principio de un archivo de bash, pero no parece ser mi caso. No ejecuto ningún script bash y mi error aparece en la línea 185, no en 179.