docker容器中布置静态网站的实现
作者:JonnyJiang-zh
服务器布置
这里推荐使用云服务器(阿里云、华为云、腾讯云)可以免费使用几天。在我们买了服务器后会遇到如下问题:
本地电脑ping服务器主机发现ping不通,请求超时
我们需要在管理服务器的界面找到安全组那一栏,然后在安全组出入都要加入icmp这个,建议直接一键添加所有。
然后我们在本地电脑就可以ping通服务器了。
docker安装
在布置好云服务器后,我们使用apt-get update, apt-get upgrade
更新信息。
然后,我们输入docker
,出现如下错误:
接着,我们按照通常的按照软件的方法apt-get install docker.io, apt-get install docker.ce
,发现出现以下问题
Package 'docker-ce' has no installation candidate
处理办法如下:
#添加docker源 sudo echo "deb https://download.docker.com/linux/ubuntu zesty edge" > /etc/apt/sources.list.d/docker.list #支持解析https apt-get install -y apt-transport-https ca-certificates curl software-properties-common #添加GPG密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - #设置存储库位置 add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
然后我们再执行就可以得到下面的结果了
接着就是验证安装结果了,输入docker run hello-world
nginx安装
接下来就是安装nginx了,常规操作apt-get install nginx
接下来就是查看安装效果了,输入命令service start nginx
,然后浏览器输入服务器外网ip地址就可以看到nginx默认的界面了。这里会出现一些问题:
1.
问题:nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
解决办法:netstat -ntlp | grep 80
查看
然后输入service nginx stop
,再次查看就没有了
问题:nginx: [emerg] "server" directive is not allowed here in /etc/nginx/nginx.conf:86
解决办法
vim /etc/nginx/nginx.conf 将添加的 server { .... } 放到 http { ... } 就可以解决了
首先:mkdir -p /var/www/html
然后 cd到目录,接着执行vim index.html
html中的内容自己定义
然后保存退出,然后修改配置文件中默认的index.html路径,如下
然后重启nginx,service nginx restart
浏览器测试
最后,我们启动docker容器的镜像就可以了,如下
最后就是查看效果了,浏览器输入地址和端口号就可以了
到此这篇关于docker容器中布置静态网站的实现的文章就介绍到这了,更多相关docker 布置静态网站内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!