Py学习  »  docker

项目部署Linux服务器--第五章 Docker

Sharylala • 3 年前 • 244 次点击  

前言:Linux服务器是 CentOS 7 版本,内核版本是64位。

项目部署Linux服务器–第五章 Docker

0、查看Linux的版本

 cat /etc/issue
 cat /etc/redhat-release
 uname -a
  • 1
  • 2
  • 3

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gGIFjnRY-1595320958220)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717103814882.png)]

1、yum方式安装docker

1.1、更新yum

sudo yum update
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oSZZJkFZ-1595320958222)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717104345159.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4t7bpxem-1595320958222)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717104354453.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eEHafcLo-1595320958223)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717105951444.png)]
(更新时间,我这次大概用了二十分钟)

1.2、yum方式安装docker

yum install docker
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SbiCAVan-1595320958224)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111120098.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fV6D3isx-1595320958225)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111131662.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ey6KUDQ4-1595320958226)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111314870.png)]

1.3、查看版本

docker -v
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6U1DCn3U-1595320958227)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111425849.png)]

2、简单使用

2.1、启动docker服务

我用的systemctl start docker启动的,如下启动命令是我网上找的

sudo service docker start
systemctl start docker
service docker start
  • 1
  • 2
  • 3

关闭docker命令 systemctl stop docker

2.2、创建tomcat镜像

2.2.1、查看可用版本

docker search tomcat
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PSYUroSJ-1595320958228)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721100102512.png)]

2.2.2、拉取镜像

docker pull tomcat
  • 1
报错:

error pulling image configuration: Get https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Cisybwa7-1595320958229)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721100539795.png)]

解决方式:

在/etc/resolv.conf文件中添加 nameserver 8.8.8.8

若原本就有nameserver就删掉,重写成 nameserver 8.8.8.8 。(反正reboot后,nameserver会还原的,不用担心会出啥问题。)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JPkDypdy-1595320958229)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721104947565.png)]
而后 service docker restart
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kaYq7Ojc-1595320958230)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721104853028.png)]
而后 docker pull tomcat
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6tziiwZ5-1595320958231)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721105327961.png)]

至此问题解决。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SZI3NcF8-1595320958232)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721105447531.png)]

2.2.3、启动tomcat镜像

查看docker所有镜像 docker images

因为服务器本身有的tomcat服务端口是8080,为避免端口冲突,所以启动tomcat镜像命令用的 docker run -d -p 8081:8080 tomcat

docker run -d -p 8081:8080 tomcat 命令相当于docker里面是8080端口,对于服务器而言是8081端口)
(docker相当于一个容器,docker里面的端口和服务器的端口是独立的。)
(所以,直接服务器ip:8080是访问不到docker的tomcat镜像的,要用服务器ip:8081。)
(若是中转服务器上部署的服务,那么当用浏览器访问的时候,要看当前“服务器IP:端口”对应的暴露给外部的url是多少。)

查看容器日志 docker logs -f 容器id
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OAPWRfR8-1595320958233)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721135637073.png)]
关闭容器命令 docker stop 容器id

2.2.4、搞点项目进tomcat镜像看下效果

进入tomcat镜像 docker exec -it 容器id /bin/bash

(docker启动的tomcat镜像,访问对应tomcat页面看不到猫,因为webapps里面什么文件都没有。所以你什么都访问不到。可以用cp命令或mv命令,将别的tomcat的webapps复制粘贴到tomcat镜像里,就能看见猫了。)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5qbZ1JQs-1595320958234)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721153308714.png)]

挂载
1.传个war包到服务器上

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GLjLmTkV-1595320958235)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721154537821.png)]

2.在容器都没用的情况下删除容器

docker stop $(docker ps -aq)
docker rm $(docker ps -aq)

3.挂载

docker run -d --name tomcat -p 8081:8080 -v /home/test:/usr/local/tomcat/webapps tomcat
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0zeoy4Sw-1595320958235)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721160420767.png)]

4.查看tomcat镜像下有没有war包了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rgt1Z0s0-1595320958236)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721160614429.png)]

5.浏览器查看效果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LYZTQT1Y-1595320958237)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721161401993.png)]

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/71722
 
244 次点击