Docker 运行 Nginx 静态网站

avatar 2018年05月08日16:50:10 6 2898 views
博主分享免费Java教学视频,B站账号:Java刘哥
本文是在 Ubuntu Server 16.04 下进行测试,详细介绍 Docker 如果运行一个 Nginx 静态网站

一、准备工作


1、SSH 连接服务器

ssh -q -l 用户名 -p 22 ip地址

 

2、切换到 root 用户

su

如果新服务器没有 root 密码,可以先设置密码

sudo passwd root

 

3、确保 apt-get 是最新版

sudo apt-get update

 

4、安装 docker

apt-get install -y docker.io 或者

curl -s https://get.docker.com|sh

 

5、查看 docker 是否安装成功

docker version

发现没有启动

 

6、启动 docker

service docker start

 

7、再次查看

docker version

启动成功,可以看到客户端和服务器端的版本信息

想看简约的,直接 docker -v

 

至此,准备工作已经做好。

 

二、运行 Nginx 镜像


1、拉取镜像到本地

docker pull nginx

这是从 docker 官方仓库下载,如果很慢,可以试试国内镜像仓库

docker pull registry.docker-cn.com/library/nginx

 

 

2、查看镜像列表

docker images

目前有一个镜像,即 registry.docker-cn.com/library/nginx

 

3、查看目前正在运行的容器

docker ps



目前没有正在运行的容器

 

4、启动镜像

① 前台启动

docker run registry.docker-cn.com/library/nginx

这是前台启动,无法输入命令,需要退出,可以按 ctrl + c



 

我们暂时不退出,打开另一个命令窗口,ssh 登录进去,查看当前正在运行的容器。可以 nginx 正在运行中



 

② 后台启动(推荐)

docker run -d registry.docker-cn.com/library/nginx

后台启动只需要加一个 -d 的参数



 

5、进入容器中

docker exec -it admiring_kapitsa bash


docker exec 表示在容器中执行命令


-i :即使没有附加也保持STDIN 打开


-t :分配一个伪终端


admiring_kapitsa 是容器名称,可以通过 docker ps 查看


bash 终端命令



然后,我们发现仿佛我们进了一台新的电脑



进去看看文件目录,找一下我们 nginx 在哪里




查看当前运行的服务


ps -ef





可以看到 nginx 正在运行

如果 ps -ef 命令没有找到

可以试试

apt-get update

apt-get install procps

 

退出容器

exit

 

三、Docker 网络


上一节我们学习了安装 Docker 和 在 Docker 中安装 Nginx,没有介绍如果在浏览器中访问 Nginx 的网站。

1、重新启动 Nginx 镜像

我们先关闭之前的镜像中的容器

docker stop admiring_kapitsa

admiring_kapitsa 是容器名称

 

启动 Nginx 镜像

docker run -d -p 8080:80 registry.docker-cn.com/library/nginx


-d --标示后台进程运行–p端口映射宿主8080→容器80端口

registry.docker-cn.com/library/nginx 是镜像名称



2、查看 8080 端口的状态


netstat -na|grep 8080



8080 端口正在运行中



3、在浏览器访问 http://localhost:8080/


可以访问到(如果是在云服务器上测试,localhost换成ip地址)




 

4、创建一个 hello.html,在里面写点东西,然后拷贝到容器中的/usr/share/html 目录中。最后提交到仓库,保证修改永久有效



 

5、提交

docker commit -m 'hello' 116c639e7fa9
  • 微信
  • 交流学习,有偿服务
  • weinxin
  • 博客/Java交流群
  • 资源分享,问题解决,技术交流。群号:590480292
  • weinxin
avatar

发表评论

avatar 登录者:匿名
匿名评论,评论回复后会有邮件通知

  

已通过评论:0   待审核评论数:0