docker run -p 8080 --name televr televr:v1 随机分配一个宿主机端口来映射8080端口
测试时候需要先删除之前的容器 docker rm db36788df9e5d9288ba41ae25f6c675da28bbd3af1ce25a4de33de39739ae975
docker run -P --name televr televr:v1 使用-P的时候,这时候就用上了之前Dockfile配置的需要暴露的端口,宿主机端口同样也是随机分配的
删除所有容器后,删除镜像
[root@izuf6buyhgwtrx60bq2okoz televr]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
televr v1 409b7e323932 2 hours ago 759MB
[root@izuf6buyhgwtrx60bq2okoz televr]# docker rmi televr:v1
Untagged: televr:v1
Deleted: sha256:409b7e32393217c7b700e264026e37f4cbe757a3d1365f23d8f8c211cdbaaa3e
Deleted: sha256:e68f22f45a1e85d8643333cecca286064249d0895d8ff2b7ae8f378f98d7ad85
Deleted: sha256:8eeded8f4672f60c0a3813dc079a0a85ff5636874fc2ea624d50284747fdb67b
Deleted: sha256:cdb57a7a5dc18135442256e65ade1b746621eb3e52f97c2d2f853970d32e7cd1
Deleted: sha256:cc321467486714ab6f1081265b45127f80e0ba303462ab14ea36ae24f36d9509
Deleted: sha256:0755d85d2d5fca8c7a7017eb1f730f1e38bc716f6a60d7988ed7f49ff6dc766f
Deleted: sha256:0a787947aef5a7ab8fa227fbbd737f5057eaf7a305844aded62d44d410dd29c2
更改Dockfile文件,重新生成镜像,发现没有生效,端口还是8080.
ENTRYPOINT ["java","-jar","/app.jar","-spring.profiles.active=dev","-server.port=9101",">/log/app.log"]
容器都删除,只保留镜像,然后使用docker-compose 来启动和停止容器。上传docker-compose.yml 文件
version: '2'
services:
televr:
image: televr:v1
ports:
- "8080:8080"
environment:
- spring.profiles.active=dev
- server.ports=8080
然后用docker-compose up启动docker-compose down停止,停止会自动删除容器。上面的端口修改依然没有生效,只能使用程序打包时候用的8080。