Manana hadisoana izay tsy voavahako na dia tamin'ny fikarohana farany nataoko aza.
Rafitra fananganana:
-rw-r--r-- 1 root root 105 Aug 8 15:58 Dockerfile
-rw-r--r-- 1 root root 21371 Aug 8 16:05 my-httpd.conf
drwxr-xr-x 2 root root 4096 Aug 8 15:37 www
1 - Mamorona sary apache aho amin'ny Dockerfile tsotra
Dockerfile:
FROM httpd:2.4
WORKDIR /usr/local/apache2/htdocs
COPY ./my-httpd.conf /usr/local/apache2/conf/httpd.conf
Baiko:
docker build -t apache .
2 - Mihazakazaka fitoeram-bokatra misy sary vaovao aho
Baiko:
docker run -v /MY_PATH/www/:/usr/local/apache2/htdocs/ -dit --name apache -p 80:80 apache
3 - Te hiaro ny fidirana amin'ny folder www, miaraka amin'ny htaccess
Firafitra fampirimana:
-rwxr-xr-x 1 root root 116 Aug 8 15:37 .htaccess
-rw-r--r-- 1 root root 46 Aug 8 15:34 .htpasswd
-rwxrwxrwx 1 root root 169 Aug 7 10:52 index.html
-rw-r--r-- 1 root root 354 Aug 7 10:56 master.css
-rw-r--r-- 1 root root 26 Aug 7 10:57 robots.txt
.htaccess
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /MY_PATH/www/.htpasswd
Require valid-user
4 - Miezaka ny hiditra amin'ny index.html ao amin'ny tranokalaniko aho
Miseho ny varavarankely connexion, manoratako ny fidirako ary ny teny miafiko.
Avy eo manana 500 Error Server Internal
5 - Nilaza ny log fa "Tsy afaka nanokatra rakitra tenimiafina"
Rehefa manamarina ireo kaonteneran'ny apache aho dia manana an'ity:
[Fri Aug 09 07:19:58.458778 2019] [authn_file:error] [pid 7:tid 140331369154304] (2)No such file or directory: [client 194.214.141.5:64325] AH01620: Could not open password file: /MY_PATH/www/.htpasswd
194.214.141.5 - user [09/Aug/2019:07:19:58 +0000] "GET / HTTP/1.1" 500 528
[Fri Aug 09 07:19:58.534805 2019] [authn_file:error] [pid 7:tid 140331135788800] (2)No such file or directory: [client 194.214.141.5:55037] AH01620: Could not open password file: /MY_PATH/www/.htpasswd, referer: http://mywebsite.com/
6 - Mila ny fanampianao aho:)
Mikaroka imbetsaka amin'ny Google aho, ny hany zavatra Hitako dia momba ny "SELinux", toy izao: Tsy nekena ny fahazoan-dàlana: Tsy afaka manokatra rakitra tenimiafina.
Tsy azoko antoka fa mitovy izany amin'ny fampiasana Docker.
Ka raha misy afaka manampy izaho, tsara izany! :)
Apache в контейнере не знает о вашем внешнем пути / MY_PATH / www /
, вам необходимо использовать путь внутри контейнера:
AuthUserFile /usr/local/apache2/htdocs/.htpasswd