gpt4 book ai didi

docker-compose up --build 在入口点的 chown 挂起,没有错误。如何解决?

转载 作者:行者123 更新时间:2023-12-05 05:37:11 25 4
gpt4 key购买 nike

我正在尝试在启动时更改已安装卷的所有权,以便容器中的用户可以写入它,而主机可以从中读取。

    volumes:
- '../local/userData:/userData'

似乎被接受了——在本地/用户数据中创建了一个文件夹,但作为根目录。entryPoint 命令中的 sudo chown -R user:user/userData 似乎失败并无错误地挂起。如何解决这个问题?

...
services:
myservice:
build:
context: ..
dockerfile: myservice-container/Dockerfile
image: myservice:latest
container_name: local_myservice_1
networks:
- local_default
volumes:
- '../local/userData:/userData'
environment:
DEPLOY_TYPE: local
AWS_ENVIRONMENT: NOT_AWS
cap_add:
- NET_ADMIN
stdin_open: true
tty: true
# Make /userData writeable to user.
entrypoint: sh -c "(ls -la /userData) && (sudo chown -R user:user /userData) && (echo OK)"

dockerfile 已成功创建用户:

RUN useradd -ms /bin/bash user

整个过程挂起:

Recreating myservice_1 ... done
Attaching to myservice_1
myservice_1 | total 8
myservice_1 | drwxr-xr-x 2 root root 4096 Jul 29 15:20 .
myservice_1 | drwxr-xr-x 1 root root 4096 Jul 29 15:27 ..
compose.cli.verbose_proxy.proxy_callable: docker events -> <docker.types.daemon.CancellableStream object at 0x7f7b815604f0>
....<hangs here> ....
^C
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
^Ccompose.cli.verbose_proxy.proxy_callable: docker containers <- (all=False, filters={'label': ['com.docker.compose.project=local', 'com.docker.compose.oneoff=False']})
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 1 items)
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- ('7f39ec0d3a5019b72ff42b13eb7a0353c420c35738c0be5d6a4f80b95fde8102')
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {'AppArmorProfile': 'docker-default',
'Args': ['-c',
'(ls -la /userData) && (sudo chown -R user:user /userData) && (echo '
'OK)'],
'Config': {'AttachStderr': False,
'AttachStdin': False,
'AttachStdout': False,
'Cmd': None,
'Domainname': '',
'Entrypoint': ['sh',
...
Killing myservice_1 ...
compose.parallel.feed_queue: Pending: {<Container: local_ai_1 (7f39ec)>}
compose.parallel.feed_queue: Starting producer thread for <Container: myservice_1 (7f39ec)>
compose.cli.verbose_proxy.proxy_callable: docker kill <- ('7f39ec0d3a5019b72ff42b13eb7a0353c420c35738c0be5d6a4f80b95fde8102')
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- ('7f39ec0d3a5019b72ff42b13eb7a0353c420c35738c0be5d6a4f80b95fde8102')
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {'AppArmorProfile': 'docker-default',
'Args': ['-c',
'(ls -la /userData) && (sudo chown -R user:user /userData) && (echo '
'OK)'],
'Config': {'AttachStderr': False,
'AttachStdin': False,
'AttachStdout': False,
'Cmd': None,
'Domainname': '',
'Entrypoint': ['sh',
...
compose.parallel.feed_queue: Pending: set()
compose.cli.verbose_proxy.proxy_callable: docker wait <- ('7f39ec0d3a5019b72ff42b13eb7a0353c420c35738c0be5d6a4f80b95fde8102')
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- ('7f39ec0d3a5019b72ff42b13eb7a0353c420c35738c0be5d6a4f80b95fde8102')
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.cli.verbose_proxy.proxy_callable: docker kill -> None
compose.cli.verbose_proxy.proxy_callable: docker stop -> None
Killing myservice_1 ... done
compose.cli.verbose_proxy.proxy_callable: docker wait -> {'Error': None, 'StatusCode': 137}
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {'AppArmorProfile': 'docker-default',
'Args': ['-c',
'(ls -la /userData) && (sudo chown -R user:user /userData) && (echo '
'OK)'],
'Config': {'AttachStderr': False,
'AttachStdin': False,
'AttachStdout': False,
'Cmd': None,
'Domainname': '',
'Entrypoint': ['sh',
...
compose.parallel.feed_queue: Pending: set()
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- ('7f39ec0d3a5019b72ff42b13eb7a0353c420c35738c0be5d6a4f80b95fde8102')
ERROR: compose.cli.main.exit_with_metrics: 2
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {'AppArmorProfile': 'docker-default',
'Args': ['-c',
'(ls -la /userData) && (sudo chown -R user:user /userData) && (echo '
'OK)'],
'Config': {'AttachStderr': False,
'AttachStdin': False,
'AttachStdout': False,
'Cmd': None,
'Domainname': '',
'Entrypoint': ['sh',

不打印“OK”。我正在运行 docker-compose --verbose up --build


没有解决:docker-compose up hangs forever. How to debug? , docker-compose up error without information , Docker compose & docker-entrypoint , docker-compose up hangs forever. How to debug?

最佳答案

简单的解决方案是始终让主机创建该文件夹,而不是将其留给 docker-compose。如果 docker-compose 创建它,它会被创建为 root。

关于docker-compose up --build 在入口点的 chown 挂起,没有错误。如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73168693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com