尝试启动 pgsql 容器时如何修复 "Cannot start service pgsql: b'OCI runtime create failed:"?
How to fix "Cannot start service pgsql: b'OCI runtime create failed:" when trying to up a pgsql container?
我得到以下
错误:marx_pgsql_1 无法启动服务 pgsql:b'OCI 运行时创建失败:container_linux.go:345:启动容器进程导致 "exec: \"/docker-entrypoint.sh\": 权限被拒绝": 未知'
当我尝试启动 pgsql alpine docker 图像时。
这是我的 docker-compose.yml
web:
image: nginx:1.17.1-alpine
ports:
- "80:80"
volumes:
- ./code:/code
- ./site.conf:/etc/nginx/conf.d/site.conf
links:
- php
php:
build: .
volumes:
- ./code:/code
links:
- pgsql
pgsql:
image: yobasystems/alpine-postgres:latest
environment:
POSTGRES_DB: bookmarx
POSTGRES_USER: admin
POSTGRES_PASSWORD: password
expose:
- "5432"
volumes:
- ./data:/var/lib/postgresql/data
restart: always
我们如何解决这个问题?
我认为脚本 docker-entrypoint.sh
不可执行,我建议执行以下操作:
创建一个 Dockerfile:
FROM yobasystems/alpine-postgres:latest
RUN chmod +x docker-entrypoint.sh
更新您的 docker-撰写:
pgsql:
build: .
environment:
POSTGRES_DB: bookmarx
POSTGRES_USER: admin
POSTGRES_PASSWORD: password
expose:
- "5432"
volumes:
- ./data:/var/lib/postgresql/data
restart: always
我得到以下
错误:marx_pgsql_1 无法启动服务 pgsql:b'OCI 运行时创建失败:container_linux.go:345:启动容器进程导致 "exec: \"/docker-entrypoint.sh\": 权限被拒绝": 未知'
当我尝试启动 pgsql alpine docker 图像时。
这是我的 docker-compose.yml
web:
image: nginx:1.17.1-alpine
ports:
- "80:80"
volumes:
- ./code:/code
- ./site.conf:/etc/nginx/conf.d/site.conf
links:
- php
php:
build: .
volumes:
- ./code:/code
links:
- pgsql
pgsql:
image: yobasystems/alpine-postgres:latest
environment:
POSTGRES_DB: bookmarx
POSTGRES_USER: admin
POSTGRES_PASSWORD: password
expose:
- "5432"
volumes:
- ./data:/var/lib/postgresql/data
restart: always
我们如何解决这个问题?
我认为脚本 docker-entrypoint.sh
不可执行,我建议执行以下操作:
创建一个 Dockerfile:
FROM yobasystems/alpine-postgres:latest
RUN chmod +x docker-entrypoint.sh
更新您的 docker-撰写:
pgsql:
build: .
environment:
POSTGRES_DB: bookmarx
POSTGRES_USER: admin
POSTGRES_PASSWORD: password
expose:
- "5432"
volumes:
- ./data:/var/lib/postgresql/data
restart: always