我需要分离环境,以便我的团队可以在没有端口冲突的情况下工作。我的想法是使用一个ubuntu容器来运行许多其他容器,并映射我们将使用的端口,没有冲突。
不幸的是,在通过ubuntu容器安装Docker后,它会出现以下错误:
无法在unix:///var/run/docker.sock连接到Docker守护程序。 docker守护程序是否正在运行?
是否可以在容器上使用Docker?这个想法有效吗?
另外,如果这不是解决原始问题的最佳方法,请您给我一个更好的解决方案吗?
我认为你必须将docker守护进程绑定到你的Ubuntu容器
-v /var/run/docker.sock:/var/run/docker.sock
或者使用基于Ubuntu 18.09的带有DinD标志的official docker image(docker中的docker)可选
docker run --privileged --name some-docker -v /my/own/var-lib-docker:/var/lib/docker -d docker:dind
您可以在其他服务容器前使用reverse proxy
,而不是使用docker的ubuntu容器。
您可以使用kubernetes,为每个开发人员创建多个名称空间。使用nginx和dynamic server_name将url映射到不同的名称空间。