aboutsummaryrefslogblamecommitdiffhomepage
path: root/support/docker/production/docker-entrypoint.sh
blob: 7dd626b9f02ae06d74cdf474ba90afedc1542d0a (plain) (tree)
1
2
3
4
5
6
7
8
9


         


                                                      

  
                                                                                           
                                   
                                                                                  
                                                                 
 


                                                         
                   


                                                 
                                             
                                                                    
                                


         
#!/bin/sh
set -e

# Populate config directory
if [ -z "$(ls -A /config)" ]; then
    cp /app/support/docker/production/config/* /config
fi

# Always copy default and custom env configuration file, in cases where new keys were added
cp /app/config/default.yaml /config
cp /app/support/docker/production/config/custom-environment-variables.yaml /config
find /config ! -user peertube -exec chown peertube:peertube {} \;

# first arg is `-f` or `--some-option`
# or first arg is `something.conf`
if [ "${1#-}" != "$1" ] || [ "${1%.conf}" != "$1" ]; then
    set -- npm "$@"
fi

# allow the container to be started with `--user`
if [ "$1" = 'npm' -a "$(id -u)" = '0' ]; then
    find /data ! -user peertube -exec  chown peertube:peertube {} \;
    exec gosu peertube "$0" "$@"
fi

exec "$@"