Docker Install Fail (permission denied)

Centos 7 Errors When I try to start in Docker:

[root@jitsidock ~]# git clone https://github.com/jitsi/docker-jitsi-meet && cd docker-jitsi-meet
    Cloning into 'docker-jitsi-meet'...
    remote: Enumerating objects: 3, done.
    remote: Counting objects: 100% (3/3), done.
    remote: Compressing objects: 100% (3/3), done.
    remote: Total 1519 (delta 0), reused 2 (delta 0), pack-reused 1516
    Receiving objects: 100% (1519/1519), 677.34 KiB | 1.10 MiB/s, done.
    Resolving deltas: 100% (713/713), done.
    [root@jitsidock docker-jitsi-meet]# cp env.example .env
    [root@jitsidock docker-jitsi-meet]# mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody,jicofo,jvb}
    [root@jitsidock docker-jitsi-meet]# docker-compose up
    Creating dockerjitsimeet_prosody_1 ... done
    Creating dockerjitsimeet_web_1     ... done
    Creating dockerjitsimeet_prosody_1 ...
    Creating dockerjitsimeet_jicofo_1  ... done
    Creating dockerjitsimeet_jvb_1     ... done
    Attaching to dockerjitsimeet_prosody_1, dockerjitsimeet_web_1, dockerjitsimeet_jicofo_1, dockerjitsimeet_jvb_1
    prosody_1  | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
    prosody_1  | [s6-init] ensuring user provided files have correct perms...exited 0.
    prosody_1  | [fix-attrs.d] applying ownership & permissions fixes...
    prosody_1  | [fix-attrs.d] done.
    prosody_1  | [cont-init.d] executing container initialization scripts...
    prosody_1  | [cont-init.d] 01-set-timezone: executing...
    prosody_1  | [cont-init.d] 01-set-timezone: exited 0.
    prosody_1  | [cont-init.d] 10-config: executing...
    prosody_1  | cp: cannot create regular file '/config/saslauthd.conf': Permission denied
    prosody_1  | fatal: unable to read from /config/saslauthd.conf, caused:
    prosody_1  |
    prosody_1  |    open /config/saslauthd.conf: no such file or directory
    prosody_1  |
    prosody_1  | Adding user `prosody' to group `sasl' ...
    prosody_1  | Adding user prosody to group sasl
    prosody_1  | Done.
    prosody_1  | mkdir: cannot create directory '/config/data': Permission denied
    prosody_1  | chown: cannot read directory '/config': Permission denied
    prosody_1  | cp: cannot create directory '/config/conf.d': Permission denied
    prosody_1  | cp: cannot create regular file '/config/prosody.cfg.lua': Permission denied
    prosody_1  | cp: cannot create regular file '/config/saslauthd.conf': Permission denied
    prosody_1  | /var/run/s6/etc/cont-init.d/10-config: line 34: /config/prosody.cfg.lua: Permission denied
    prosody_1  | /var/run/s6/etc/cont-init.d/10-config: line 35: /config/conf.d/jitsi-meet.cfg.lua: No such file or directory
    prosody_1  |
    prosody_1  |
    prosody_1  | **************************
    prosody_1  | Prosody was unable to find the configuration file.
    prosody_1  | We looked for: /etc/prosody//config/prosody.cfg.lua
    prosody_1  | A sample config file is included in the Prosody download called prosody.cfg.lua.dist
    prosody_1  | Copy or rename it to prosody.cfg.lua and edit as necessary.
    prosody_1  | More help on configuring Prosody can be found at https://prosody.im/doc/configure
    prosody_1  | Good luck!
    prosody_1  | **************************
    prosody_1  |
    prosody_1  |

....

prosody_1  | mkdir: cannot create directory '/config/certs': Permission denied
web_1      | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
web_1      | [s6-init] ensuring user provided files have correct perms...exited 0.
web_1      | [fix-attrs.d] applying ownership & permissions fixes...
web_1      | [fix-attrs.d] done.
web_1      | [cont-init.d] executing container initialization scripts...
web_1      | [cont-init.d] 01-set-timezone: executing...
web_1      | [cont-init.d] 01-set-timezone: exited 0.
web_1      | [cont-init.d] 10-config: executing...
web_1      | generating self-signed keys in /config/keys, you can replace these with your own keys if required
web_1      | mkdir: cannot create directory '/config/nginx': Permission denied
web_1      | mkdir: cannot create directory '/config/keys': Permission denied
web_1      | Generating a RSA private key
web_1      | ..........................+++++
web_1      | ...........................................................................................+++++
web_1      | writing new private key to '/config/keys/cert.key'
web_1      | req: Can't open "/config/keys/cert.key" for writing, No such file or directory
web_1      | Can't open /config/nginx/dhparams.pem for writing, No such file or directory
web_1      | 140183157129280:error:02001002:system library:fopen:No such file or directory:../crypto/bio/bss_file.c:74:fopen('/config/nginx/dhparams.pem','w')
web_1      | 140183157129280:error:2006D080:BIO routines:BIO_new_file:no such file:../crypto/bio/bss_file.c:81:
web_1      | cp: cannot create regular file '/config/nginx/nginx.conf': No such file or directory
web_1      | /var/run/s6/etc/cont-init.d/10-config: line 61: /config/nginx/meet.conf: No such file or directory
web_1      | /var/run/s6/etc/cont-init.d/10-config: line 65: /config/nginx/ssl.conf: No such file or directory
web_1      | /var/run/s6/etc/cont-init.d/10-config: line 69: /config/nginx/site-confs/default: No such file or directory
web_1      | cp: cannot create regular file '/config/config.js': Permission denied
web_1      | sed: can't read /config/config.js: No such file or directory
web_1      | cp: cannot create regular file '/config/interface_config.js': Permission denied
web_1      | sed: can't read /config/interface_config.js: No such file or directory
web_1      | [cont-init.d] 10-config: exited 2.
web_1      | [cont-init.d] done.
web_1      | [services.d] starting services
web_1      | [services.d] done.
web_1      | nginx: [emerg] open() "/config/nginx/nginx.conf" failed (2: No such file or directory)
jicofo_1   | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
jicofo_1   | [s6-init] ensuring user provided files have correct perms...exited 0.
jicofo_1   | [fix-attrs.d] applying ownership & permissions fixes...
jicofo_1   | [fix-attrs.d] done.
prosody_1  |
prosody_1  |
prosody_1  | **************************
prosody_1  | Prosody was unable to find the configuration file.
prosody_1  | We looked for: /etc/prosody//config/prosody.cfg.lua
prosody_1  | A sample config file is included in the Prosody download called prosody.cfg.lua.dist
prosody_1  | Copy or rename it to prosody.cfg.lua and edit as necessary.
prosody_1  | More help on configuring Prosody can be found at https://prosody.im/doc/configure
prosody_1  | Good luck!
prosody_1  | **************************
prosody_1  |

What’s your docker and docker compose version?

I’m running under centos 7 and had no problem… I think you can have selinux breaking things up: try adding “:Z” at the end of every volume in docker-compose.yml

    volumes:
        - ${CONFIG}/web:/config:Z
        - ${CONFIG}/web/letsencrypt:/etc/letsencrypt:Z
        - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z

(and remove ~/.jitsi-meet-cfg/ before trying again)

I’ve installed clean OS and docker community edition and now all is fine. Thanx!

Also I dont think you should be running jitsi docker as root user. I had problems running as root with the /config directory. login with regular user name and use sudo to install and run containers.

I ran into this using the current docker quickstart guide. The only way I could resolve it is to modify volume in the docker-compose.yml file from:

- ${CONFIG}/prosody/config:/config:Z
to
- ${CONFIG}/prosody/config:/etc/prosody:Z

Is this valid? Can the docker image only find prosody.cfg.lua at /etc/prosody/?