псевдоним для докера podman -compose -H unix :///run/user/$UID/podman/podman.sock up -d

Я подозреваю, что вы хотели спросить конкретно о chmod o+x, чтобы разрешить other(, т. е. кому-то, кто не является ни user, ни членом указанныхgroup)пользователей для выполнения файла. chmod a+xявляется расширенным набором chmod o+x, так как включает разрешение на выполнение для всех 3 (user, groupи other).

Разница заключается в контексте, в котором будет выполняться программа. С sudoпрограмма запускается в контексте указанного пользователя; без sudoпрограмма запускается в контексте текущего пользователя. Для некоторых скриптов это может вообще не иметь значения, но если речь идет о правах пользователя, это имеет значение. Возможно, это поможет объяснить гипотетический вредоносный скрипт, который удалит все файлы в домашнем каталоге пользователя :

.

Если пользователь aliceзапустит sudo -u bob deleteHomeFiles.sh, то все файлы в домашнем каталоге bob будут удалены. С другой стороны, если aliceзапустит deleteHomeFiles.shнапрямую, файлы в домашнем каталоге Алисы будут удалены.

0
04.10.2021, 20:56
1 ответ

Псевдоним ниже работает, если я оставлюup -d

alias dc="docker-compose -H unix:///run/user/$UID/podman/podman.sock"

Обновление

Псевдоним в.bashrc

alias dc='docker-compose -H unix:///run/user/$UID/podman /podman.socket'

dcзапускается и выдает ожидаемый результат

[user@server1 ~]$ dc
Define and run multi-container applications with Docker.

Usage:
  docker-compose [-f <arg>...] [--profile <name>...] [options] [--] [COMMAND] [ARGS...]
  docker-compose -h|--help

Options:
  -f, --file FILE             Specify an alternate compose file
                              (default: docker-compose.yml)
  -p, --project-name NAME     Specify an alternate project name
                              (default: directory name)
  --profile NAME              Specify a profile to enable
  -c, --context NAME          Specify a context name
  --verbose                   Show more output
  --log-level LEVEL           Set log level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
  --ansi (never|always|auto)  Control when to print ANSI control characters
  --no-ansi                   Do not print ANSI control characters (DEPRECATED)
  -v, --version               Print version and exit
  -H, --host HOST             Daemon socket to connect to

  --tls                       Use TLS; implied by --tlsverify
  --tlscacert CA_PATH         Trust certs signed only by this CA
  --tlscert CLIENT_CERT_PATH  Path to TLS certificate file
  --tlskey TLS_KEY_PATH       Path to TLS key file
  --tlsverify                 Use TLS and verify the remote
  --skip-hostname-check       Don't check the daemon's hostname against the
                              name specified in the client certificate
  --project-directory PATH    Specify an alternate working directory
                              (default: the path of the Compose file)
  --compatibility             If set, Compose will attempt to convert keys
                              in v3 files to their non-Swarm equivalent (DEPRECATED)
  --env-file PATH             Specify an alternate environment file

dc up -dгенерирует исключение

[user@server1 nextcloud]$ dc up -d
Traceback (most recent call last):
  File "urllib3/connectionpool.py", line 677, in urlopen
  File "urllib3/connectionpool.py", line 392, in _make_request
  File "http/client.py", line 1277, in request
  File "http/client.py", line 1323, in _send_request
  File "http/client.py", line 1272, in endheaders
  File "http/client.py", line 1032, in _send_output
  File "http/client.py", line 972, in send
  File "docker/transport/unixconn.py", line 43, in connect
FileNotFoundError: [Errno 2] No such file or directory
0
04.10.2021, 23:01

Теги

Похожие вопросы