Мне нужно иметь имя хоста для запуска сценария точки входа, который запускается соответствующим образом (производство, подготовка к выпуску).Как я могу получить hostname
и установить его как ARG внутри Dockerfile.Этот файл Docker используется docker-compose.yml.
docker-compose.yml:
...
nginx:
restart: always
build: ./nginx
ports:
- "80:80"
- "443:443"
volumes_from:
- web
depends_on:
- web
container_name: 'nginx'
...
Dockerfile внутри папки ./nginx:
FROM nginx:latest
ARG HOST_HOSTNAME=hostname
ENV HOST_HOSTNAME=$HOST_HOSTNAME
COPY docker-entrypoint.sh /
RUN chmod +x /docker-entrypoint.sh
ENTRYPOINT ["/docker-entrypoint.sh"]
...
И внутри docker-entrypoint.sh, чтобы иметь возможность использовать ${HOST_HOSTNAME}.Также я хочу, чтобы этот код мог запускаться на каждой машине, ничего не меняя, а просто добавляя новые имена хостов в docker-entrypoint.sh