84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
在容器里安装新软件后,必须commit后,再run来添加端口么,这要麻烦死了啊:(
认证0级讲师
如果run时用 -p 映射端口还是麻烦的话,可以写在Dockerfile
-p
可以把run命令写成shell文件,以后直接执行这个文件就是了。不需要每次写。
可能你的用法不是非常正确
一个容器一般来说应该只运行一个服务的, 在这样的场合下, 往一个容器里面安装新软件再commit就显得很奇怪
你可以创建一个基础镜像, 其它的都在这个基础镜像上build出来
然后, docker-compose和dockerfile本质上就是可以让你方便管理容器和镜像的 (多同一个dockerfile的多次build是会被缓存成为镜像的), 所以你可以在你的基础镜像上多写几个dockerfile, 每个dockerfile只装一个你需要用到的服务
截图是我的docker-compose.yml, 运行起来就是非常明确的一个服务一个container
如果run时用
-p
映射端口还是麻烦的话,可以写在Dockerfile可以把run命令写成shell文件,以后直接执行这个文件就是了。不需要每次写。
可能你的用法不是非常正确
一个容器一般来说应该只运行一个服务的, 在这样的场合下, 往一个容器里面安装新软件再commit就显得很奇怪
你可以创建一个基础镜像, 其它的都在这个基础镜像上build出来
然后, docker-compose和dockerfile本质上就是可以让你方便管理容器和镜像的 (多同一个dockerfile的多次build是会被缓存成为镜像的), 所以你可以在你的基础镜像上多写几个dockerfile, 每个dockerfile只装一个你需要用到的服务
截图是我的docker-compose.yml, 运行起来就是非常明确的一个服务一个container