我是docker的新手。我正在尝试使用docker-compose将我的Go应用程序容器化。技术使用Golang、Docker 20.10.8和Air(用于实时重新加载)。我的Dockerfile看起来像这样。
FROM base as dev
WORKDIR /opt/app/api
RUN apk update
RUN apk add git gcc musl-dev
RUN apk add curl
RUN curl -sSfL https://raw.githubusercontent.com/cosmtrek/air/master/install.sh | sh -s -- -b $(go env GOPATH)/bin
# RUN go get
# RUN go mod tidy
CMD ["air"]
我的docker撰写。yml就是这个。
version: "3.9"
services:
app:
build:
dockerfile: Dockerfile.local
context: .
target: dev
container_name: 'server'
volumes:
- .:/opt/app/api
env_file:
- .env
ports:
- "8080:8080"
restart:
always
depends_on:
- db
- rabbitmq
db:
image: postgres:13-alpine
volumes:
- data:/var/lib/postgresql/data
container_name: 'postgres'
ports:
- 5432:5432
environment:
POSTGRES_DB: postgres
POSTGRES_USER: postgres
POSTGRES_HOST_AUTH_METHOD: trust
POSTGRES_PASSWORD: postgres
rabbitmq:
image: rabbitmq:3-management-alpine
container_name: 'rabbitmq'
ports:
- 5672:5672
- 15672:15672
volumes:
- rabbitmq:/var/lib/rabbitmq
- rabbitmq-log:/var/log/rabbitmq
migrate: &basemigrate
profiles: ["tools"]
image: migrate/migrate
entrypoint: "migrate -database postgresql://thursday:postgres@db/postgres?sslmode=disable -path /tmp/migrations"
command: up
depends_on:
- db
volumes:
- ./migrations:/tmp/migrations
create-migration:
<<: *basemigrate
entrypoint: migrate create -dir /tmp/migrations -ext sql
command: ""
depends_on:
- db
down-migration:
<<: *basemigrate
entrypoint: migrate -database postgresql://thursday:postgres@db/postgres?sslmode=disable -path /tmp/migrations
command: down
depends_on:
- db
volumes:
data:
rabbitmq:
rabbitmq-log:
在运行命令sudo docker-compose up-d时,我收到以下错误
来自守护进程的错误响应:OCI运行时创建失败:container_linux.go:380:启动容器进程导致:exec:"air":在$PATH中找不到可执行文件:未知
如“docker:executable file not found in$PATH
中所述:
当您对命令使用exec格式时(在您的示例中:CMD[“air”],一个带双引号的JSON数组),它将在没有shell的情况下执行<这意味着大多数环境变量将不存在。
CMD air
应该可以工作,前提是:
air
是一个可执行文件(chmod 755
)air
被交叉编译为Linux(除非运行docker的主机已经Linux)我是docker新手。我想在docker中部署我的应用程序节点js,但我面临以下错误,请帮助我 /usr/bin/docker-current:来自守护进程的错误响应:oci运行时错误:container_linux.go:247:启动容器进程导致“在$PATH中找不到exec: \".\": 可执行文件”。 Dockerfile:
错误:无法启动服务cpanel_客户端:头字段值无效“oci运行时错误:容器_linux.go:247:启动容器进程导致”exec:\“sudo\”:未找到可执行文件 这是我的docker文件, 这是码头工人。yml, 我的package.json档案, 建造成功了。当我运行时,我遇到了这个错误。有人能告诉我哪里错了吗?
我能够进入容器"Mariadb"使用 但我不能,我现在有这个错误
我试图启动一个docker容器,我得到错误“来自守护进程的错误响应:OCI运行时创建失败:container_linux.go:349:启动容器进程导致”exec:“uwsgi”:在$PATH中找不到可执行文件“:未知”。我认为这与我的dockerfile和uwsgi文件有关,但我不确定为什么我无法启动我的容器。我已经安装了pip uwsgi。除了安装uwsgi,我也没有找到任何其他解决方案,尽管
我试图将我的FastApi应用程序docker化,但在我运行命令docker compose-f local之后,它就因为这个错误崩溃了。有人能帮我吗? Dockerfile: local.yml文件: 错误: 无法启动服务核心:无法创建填充:OCI运行时创建失败:container\u linux。go:380:启动容器进程导致:exec:“uvicorn”:在$PATH中未找到可执行文件:未知
我正在尝试对一个简单的Python Flask应用程序进行dockerize,但在运行容器时出现了一个错误。 Docker:来自守护进程的错误响应:OCI运行时创建失败:container_linux.go:344:启动容器进程导致"exec:\"python\":在$PATH中找不到可执行文件:未知。 localhost工作人员: 应用程序。派克 Dockerfile文件 命令: 预期:烧瓶网应