我正在将我的webapp从一台机器迁移到docker容器中,并且网络中的人们可以使用docker conatiner运行所在的主机名连接到我的webapp。所以我的主机名是:
:~ # hostname
mywebapp
人们只需将http://mywebapp/
放入网址即可连接到我的Web应用程序,它将显示该网页。 我想更改此主机名而不直接更改主机上的主机名。
假设我希望将主机名更改为myotherwebapp
,以便用户可以像这样http://myotherwebapp/
连接到Web应用程序。
是否可以在docker-compose.yml
中执行此操作而无需直接更改主机的主机名?
这是我的docker-compose.yml
:
version: "2.1"
services:
db:
restart: always
image: mysql:5.7
env_file: .env
ports:
- "3306:3306"
environment:
- MYSQL_DATABASE=mydb
- MYSQL_USER=user
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
volumes:
- data-volume:/var/lib/mysql
app:
restart: always
build: ./
user: root
ports:
- "8000:8000"
depends_on:
- "db"
command: sh -c "/usr/local/bin/upstart.sh"
volumes:
- ./upstart.sh:/usr/local/bin/upstart.sh
- /home/user/webapp/static
nginx:
restart: always
build: ./nginx
ports:
- "80:80"
volumes:
- /www/static
volumes_from:
- app
depends_on:
- app
volumes:
data-volume: