nginx:[emerg] socket()0.0.0.0:80在Docker上失败(13:权限被拒绝)

时间:2019-04-19 19:44:55

标签: linux docker nginx docker-compose

总结:它运行在我的Windows中,但是不在我的Linux Deepin中运行(我正在认识这个世界)。

安装docker CE和docker compose之后,我无法运行任何Web服务器,apache和nginx。在这种情况下,我使用的是nginx,但没有成功。

$ docker-compose up
Starting php_php_1   ... done
Starting php_nginx_1 ... done
Attaching to php_nginx_1, php_php_1
nginx_1  | 2019/04/19 19:09:56 [emerg] 1#1: socket() 0.0.0.0:80 failed (13: Permission denied)
nginx_1  | nginx: [emerg] socket() 0.0.0.0:80 failed (13: Permission denied)
php_1    | [19-Apr-2019 19:09:57] ERROR: failed to create new listening socket: socket(): Permission denied (13)
php_1    | [19-Apr-2019 19:09:57] ERROR: failed to create new listening socket: socket(): Permission denied (13)
php_1    | [19-Apr-2019 19:09:57] ERROR: FPM initialization failed
php_1    | [19-Apr-2019 19:09:57] ERROR: FPM initialization failed
php_nginx_1 exited with code 1
php_php_1 exited with code 78

注意:安装后,我之前已经在下面运行过它,并且我没有注销过

$ sudo groupadd docker
$ sudo usermod -aG docker $USER
$ sudo chmod +x /lib/systemd/system/docker.socket

即使我的端口:80 中没有任何物品。

netstat --listen | grep :80

我遵循了这个主题33650820,但没有成功

1 个答案:

答案 0 :(得分:0)

几个小时后,我得到了...仅在Linux Deepin上禁用AppArmor。

$ sudo mkdir -p /etc/default/grub.d
$ echo 'GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT apparmor=0"' 
| sudo tee /etc/default/grub.d/apparmor.cfg
$ sudo update-grub
$ sudo reboot