利用docker搭建2048游戏与部署Nginx服务

1.搭建2048游戏

1.下载并安装docker

安装包:

container-selinux-2.21-1.el7.noarch.rpm
docker-ce-18.06.1.ce-3.el7.x86_64.rpm
libsemanage-2.5-8.el7.x86_64.rpm
libsemanage-python-2.5-8.el7.x86_64.rpm
pigz-2.3.4-1.el7.x86_64.rpm
policycoreutils-2.5-17.1.el7.x86_64.rpm
policycoreutils-python-2.5-17.1.el7.x86_64.rpm

点击此处即可下载docker

#1.在官网上下载docker
[root@foundation66 Desktop]# cd docker/
[root@foundation66 docker]# ls

在这里插入图片描述

#2.安装docker
[root@foundation66 docker]# yum install -y *
#3.查看网络接口,发现多了一个docker0
[root@foundation66 docker]# ip addr

在这里插入图片描述
2.启动docker

[root@foundation66 docker]# systemctl start docker
#查看docker系统信息,包括镜像和容器数等
[root@server3 docker]# docker info

在这里插入图片描述

#查看docker的版本信息
[root@server3 docker]# docker version

在这里插入图片描述
3.下载并导入game2048镜像

game2048.tar
#1.在网站上下载镜像
[root@server3 ~]# ls
docker  game2048.tar
#查看镜像
[root@server3 ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
#查看所有容器状态
[root@server3 ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
#查看正在运行的容器进程
[root@server3 ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
#2.导入镜像
[root@server3 ~]# docker load -i game2048.tar 

在这里插入图片描述

#3.查看镜像
[root@server3 ~]# docker images

在这里插入图片描述
4.创建并运行容器

#1.创建并运行game容器; -d表示打入后台,--name表示容器名称,-p表示端口映射
[root@server3 ~]# docker run -d --name game -p 8080:80 game2048
cdcaa4e0e5712035794fc495ac8583833927a2e086917af814bceef7cab55caa
#2.查看所有容器状态
[root@foundation66 ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                           NAMES
ef5a1c1640e4        game2048            "/bin/sh -c 'sed -i …"   3 days ago          Up 13 minutes       443/tcp, 0.0.0.0:8080->80/tcp   game
#3.查看正在运行的容器进程
[root@foundation66 ~]# docker ps 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                           NAMES
ef5a1c1640e4        game2048            "/bin/sh -c 'sed -i …"   3 days ago          Up 16 minutes       443/tcp, 0.0.0.0:8080->80/tcp   game

在这里插入图片描述
测试:

输入:localhost:8080  即可访问2048游戏

在这里插入图片描述

2.部署Nginx服务

1.访问阿里云获取镜像加速器的方法

登陆:
在这里插入图片描述
在这里插入图片描述
获取镜像加速器:
在这里插入图片描述
2.配置镜像加速器

[root@foundation66 Desktop]# cd /etc/docker/
[root@foundation66 docker]# ls
certs.d  key.json
#1.修改配置文件
[root@foundation66 docker]# vim daemon.json
###########################
{
  "registry-mirrors": ["https://2izot27h.mirror.aliyuncs.com"]
}

在这里插入图片描述

#2.重载守护进程
[root@foundation66 docker]# systemctl daemon-reload
#3.重启docker服务
[root@foundation66 docker]# systemctl restart docker

3.下载nginx镜像

#从网站上拉取(下载)nginx镜像
[root@foundation66 docker]# docker pull  nginx

在这里插入图片描述

#查看镜像
[root@foundation66 docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              881bd08c0b08        8 days ago          109MB
game2048            latest              19299002fdbe        2 years ago         55.5MB
[root@foundation66 docker]# docker images | grep nginx
nginx               latest              881bd08c0b08        8 days ago          109MB

4.关闭之前的game容器

#查看正在运行的容器进程
[root@foundation66 docker]# docker ps 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                           NAMES
ef5a1c1640e4        game2048            "/bin/sh -c 'sed -i …"   3 days ago          Up 2 minutes        443/tcp, 0.0.0.0:8080->80/tcp   game
#关闭game容器
[root@foundation66 docker]# docker stop game
game
#查看正在运行的容器进程
[root@foundation66 docker]# docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

5.创建并运行vm1容器

#1.创建并运行vm1容器
[root@foundation66 docker]# docker run -d --name vm1 nginx
7098faa5f6385ef7266e0fb8fdb50126a2808e18f8d68c32aa0ea1bf87cb5ad1
#2.查看正在运行的容器进程
[root@foundation66 docker]# docker ps 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
7098faa5f638        nginx               "nginx -g 'daemon of…"   14 seconds ago      Up 12 seconds       80/tcp              vm1

6.获取容器元数据

#查看容器详情(获取容器元数据)
[root@foundation66 docker]# docker inspect vm1

在这里插入图片描述

#查看nginx镜像的创建历史
[root@foundation66 docker]# docker history nginx

在这里插入图片描述
测试:

在网页山上输入: 172.18.0.2(容器详情中的IPAddress)  即可访问nginx的默认发布页面

在这里插入图片描述
7.更改发布页面

方法1:

#1.编写发布页面
[root@foundation66 ~]# vim index.html
[root@foundation66 ~]# cat index.html 
<h1>westos.org</h1>
#2.拷贝;/usr/share/nginx/html为nginx的默认发布目录
[root@foundation66 ~]# docker cp index.html vm1:/usr/share/nginx/html

测试:

刷新网页,发现nginx的发布页面更改了
在这里插入图片描述
方法2:

#1.先删除之前的vm1容器
[root@foundation66 ~]# docker rm -f vm1
vm1
#2.重新创建并运行vm1容器,-v表示目录映射
[root@foundation66 ~]# docker run -d --name vm1 -v /tmp/docker/:/usr/share/nginx/html nginx
3ceb1ab452ef2b0ae21bf665d5c2ca0faf67ef434cbaff64e08b1f04938da6c4
#3.编写发布页面
[root@foundation66 ~]# cd /tmp/docker/
[root@foundation66 docker]# vim index.html
[root@foundation66 docker]# cat index.html 
<h1>westos.org</h1>
<h1>westos.org</h1>
<h1>westos.org</h1>

测试:

刷新网页,发现nginx的发布页面也随之更改
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/lilygg/article/details/88381156