如何为Docker Hub的图片“docker-compose up”
是否可以拖拽并启动在docker-compose.yml中定义的所有容器?我试图执行docker-compose up -d my/image
,其中my/image
是DockerHub上的回购,但它说“无法找到docker-compose.yml”。我也试着先拉使用docker pull my/image
具有相同的结果如何为Docker Hub的图片“docker-compose up”
UPD图像:图像https://hub.docker.com/r/gplcart/core/,源 - https://github.com/gplcart/docker-core
解决:好像泊坞窗,撰写不起作用这种方式,我想。我需要手动创建一个目录,将docker-compose.yml放在那里,然后运行docker-compose up
。
https://docs.docker.com/compose/wordpress/#define-the-project
我预计运行docker-compose up -d repo/image
足够的下载和运行的所有定义的容器
尝试登录到泊坞枢纽,使泊坞撰写知道你想从那里拉的图像。
在命令行...
docker login
将提示您输入用户名和密码。一旦通过身份验证,撰写应该在运行docker-compose up
时从Docker Hub提取图片。
此外,您需要从docker-compose.yml
文件所在的同一目录运行docker-compose up
。看看Github上的docker-compose.yml
文件,看起来你缺少几行。您需要指定版本,并且gplcart
,db
和phpmyadmin
应该在services
之下。
version: '3'
services:
gplcart:
build: .
links:
- db
ports:
- 8080:80
db:
image: mariadb:10.2
environment:
MYSQL_DATABASE: test
MYSQL_ROOT_PASSWORD: test
ports:
- 3306:3306
phpmyadmin:
image: phpmyadmin/phpmyadmin:4.7
links:
- db
ports:
- 8181:80
我猜想“docker login”是推送的。无论如何,它没有工作 – ymakux
看起来你也缺少'docker-compose.yml'文件中的行。更新了我的答案。 “ – grizzthedj
”另外,您需要从docker-compose.yml文件所在的同一目录运行docker-compose“是的,但是如何获取目录如果我拉取远程图像?对于本地图像来说很容易。 “docker-compose up remote/image”的全部内容是自动解决所有问题。我错了吗? – ymakux
要拉的图像使用docker-compose pull <service_name>
,其中service_name
是你docker-compose.yml
文件
的docker pull my/image
失败列出的服务之一,但比你指出应该失败,不同的错误(你贴一个撰写错误)
在您的示例中,my/name
不是有效的服务名称,因为您无法在服务名称中使用/
。撰写会给你一个不同的错误。
目前还不清楚my/name
代表什么(假设你用本地代替它)。
如果您发布您的docker-compose.yml
它将有助于确定正确的docker
和docker-compose
命令应该是什么。
错误Can't find docker-compose.yml
表示您目前不在docker-compose.yml文件的目录中,或者您已将该文件命名为不同的文件。如果您为文件指定了不同的内容(包括不同的大小写或扩展名),则可以重命名该文件,也可以运行docker-compose -f your_filename.yml up
以传递docker-compose
的其他文件进行解析。如果您不在目录中,请确保在运行docker-compose
命令之前先进入该目录。
docker-compose
根据您当地的docker-compose.yml
文件采取行动。如果不是执行单独的docker
命令(为了拉取图像或部署应用等)而使用docker-compose
来提取第三方映像通常很有用,您希望以更结构化的方式定义您的架构,例如:
我docker-compose.yml
文件:
version: '3'
services:
containerA:
image: gplcart/core
containerB:
build: .
# go on defining the rest ...
,并与部署:
docker-compose build && docker-compose up -d
你有一个'泊坞窗 - compose.yaml'(或'.yml')文件?没有一个“docker-compose”将无法工作。 – larsks
当然,我可以为本地图像运行“docker-compose up” – ymakux
请发布您的docker-compose.yml文件 –