我已经在 GitHub Packages 上推送了一个 Docker 镜像,现在我想拉取它并使用它。为了在本地运行图像,我曾经转到相关文件夹并使用命令运行它docker-compose up
。然而现在,通过从 GitHub Packages 拉取,我只是获得了没有任何文件夹的 Docker 映像,而且我不知道如何运行它。
通过检查图像,它具有与原始文件夹相关的所有文件,但是当我尝试运行该docker-compose up ghcr.io/giuliomat/bdt-project
命令时,我收到一条错误消息,指出目录中没有 docker-compose.yml。如果我只使用该命令,docker run ghcr.io/giuliomat/bdt-project
它将运行 docker-compose.yml 文件中指定的两个服务之一。如何正确运行 Docker Compose 镜像?提前致谢!
更新:我尝试更好地解释自己。图像中有一个 Dockerfile(现在我已在问题中上传),用于构建 Web 服务。我在本地开发了该映像,并且使用 运行它没有问题docker-compose up
,但现在我想了解当用户从我的 GitHub 包中提取它时必须执行哪些操作才能运行它,这就是我的问题。拉取的映像应该具有运行所需的所有元素,但我不知道使用什么命令来告诉 Docker 运行 docker-compose.yml 文件中指定的两个服务,因为当用户从 GitHub 中拉取包时,它只获取图像,但没有运行的文件夹docker-compose up
。
Dockerfile:
docker-compose.yml:
拉取的 docker 镜像的内容:
我有理解这段代码的问题,尤其是"vet-1"部分.这是什么意思?它返回的数组项目是什么?谢谢
#include <stdlib>
#include <iostream>
using namespace std;
void change( int m, int n[7]);
int main(){
int vet[] = {1,2,3,4,5};
change(vet[4],vet-1);
change(0,&vet[4]);
int i=0;
for (i=0;i<5;i++) cout << vet[i];
return 0;
}
void change( int m, int n[7]) {
(*(n+m))--; m++; n--;
}
Run Code Online (Sandbox Code Playgroud)