lyon-esport / AdminAFK-registration

The goal of this project is to accept/refuse/ignore registration who meets requirements on a tournament managed by Toornament.
Other
4 stars 1 forks source link

Incorrect usage of COPY in Dockerfile #1

Closed eoswald closed 4 years ago

eoswald commented 4 years ago

I don't think this command does what you expect: https://github.com/lyon-esport/AdminAFK-registration/blob/master/Dockerfile#L13

When you use a glob with the COPY instruction, it will traverse the directory structure and only copy the files to the <dest> directory. It will not copy the sub-directories. https://stackoverflow.com/questions/37789984/how-to-copy-folders-to-docker-image-from-dockerfile

This is what your docker image looks like:

root@eadea977f262:/var/www/html# ls -l
total 1648
-rw-r--r-- 1 root root    6775 Nov  5 11:38 Bdd.php
-rw-r--r-- 1 root root     824 Nov  5 11:38 Dockerfile
-rw-r--r-- 1 root root      23 Nov  5 11:38 HEAD
-rw-r--r-- 1 root root   21779 Nov  5 11:38 LICENSE
-rw-r--r-- 1 root root   23120 Nov  5 11:38 LICENSE.fr
-rw-r--r-- 1 root root    8149 Nov  5 11:38 ManageRegistration.php
-rw-r--r-- 1 root root    4612 Nov  5 11:38 PoweredbyToor_White.png
-rw-r--r-- 1 root root    3748 Nov  5 11:38 README.md
-rw-r--r-- 1 root root   13727 Nov  5 11:38 Toornament.php
-rw-r--r-- 1 root root   19690 Nov  5 11:38 backend.php
-rw-r--r-- 1 root root    2545 Nov  5 11:38 base.twig
drwxr-xr-x 2 root root    4096 Nov  5 11:38 branches
-rw-r--r-- 1 root root  158779 Nov  5 11:38 bulma.min.css
-rw-r--r-- 1 root root     863 Nov  5 11:41 composer.json
-rw-r--r-- 1 root root    6912 Nov  5 11:41 composer.lock
-rw-r--r-- 1 root root     277 Nov  5 11:38 config
-rw-r--r-- 1 root root    2771 Nov  5 11:38 csrf.php
-rw-r--r-- 1 root root     229 Nov  5 11:38 custom.css
-rw-r--r-- 1 root root   28672 Nov  5 11:42 database.sqlite
-rw-r--r-- 1 root root      73 Nov  5 11:38 description
-rw-r--r-- 1 root root 1174322 Nov  5 11:38 fontsawesome.js
-rw-r--r-- 1 root root   12577 Nov  5 11:38 glyphicon-192x192.png
drwxr-xr-x 2 root root    4096 Nov  5 11:38 hooks
-rw-r--r-- 1 root root    2479 Nov  5 11:38 index
-rw-r--r-- 1 root root    7481 Nov  5 11:38 index.php
-rw-r--r-- 1 root root   20738 Nov  5 11:38 index.twig
drwxr-xr-x 2 root root    4096 Nov  5 11:38 info
-rw-r--r-- 1 root root    6706 Nov  5 11:38 les_small.png
-rw-r--r-- 1 root root   35911 Nov  5 11:38 les_transparent.png
-rw-r--r-- 1 root root    2324 Nov  5 11:38 log.php
drwxr-xr-x 3 root root    4096 Nov  5 11:38 logs
-rw-r--r-- 1 root root    4798 Nov  5 11:38 main.js
-rw-r--r-- 1 root root    4055 Nov  5 11:38 messages.php
-rw-r--r-- 1 root root     657 Nov  5 11:38 messages.twig
drwxr-xr-x 4 root root    4096 Nov  5 11:38 objects
-rw-r--r-- 1 root root     165 Nov  5 11:38 packed-refs
drwxr-xr-x 5 root root    4096 Nov  5 11:38 refs
-rw-r--r-- 1 root root    6143 Nov  5 11:38 setup.php
drwxr-xr-x 5 root root    4096 Nov  5 11:41 vendor
-rw-r--r-- 1 root root    4859 Nov  5 11:38 webhook.php

Since there is no /var/www/html/class/ folder, index.php runs into an error:

Warning: require_once(class/Bdd.php): failed to open stream: No such file or directory in /var/www/html/index.php on line 43

Fatal error: require_once(): Failed opening required 'class/Bdd.php' (include_path='.:/usr/local/lib/php') in /var/www/html/index.php on line 43
M0NsTeRRR commented 4 years ago

I've never reused this project in production since this broken commit -> https://github.com/lyon-esport/AdminAFK-registration/commit/0b212ecd882d4ff37df956f555b4004a264e371b

I've probably tested the modification too quickly, my bad. I know about COPY fact, a mistake on my side, anyway thanks for your contribution !