Docker教程(3)—Docker安装Tomcat,Nginx与可视化管理工具Portainer的安装和使用

前面我们讲了Docker的安装使用,以及一些常用的命令。俗话说只说不练假把式,接下来我们使用Docker安装一些常用的镜像Tomcat, Nginx,练习一下Docker命令的使用。同时学习一下Docker可视化图形管理工具Portainer的安装与使用。

 

一. 安装Tomcat

1.1 查找镜像

Docker Hub 上查找 Tomcat 镜像,我们可以通过 Sort by 查看不同版本的 tomcat,默认的是最新版本 tomcat:latest

 

除此之外,我们还可以使用用 docker search tomcat 命令来查看tomcat可用版本。

[root@albert ~]# docker search tomcat
NAME                          DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
tomcat                        Apache Tomcat is an open source implementati…   2883                [OK]
tomee                         Apache TomEE is an all-Apache Java EE certif…   84                  [OK]
dordoka/tomcat                Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 base…   55                                      [OK]
bitnami/tomcat                Bitnami Tomcat Docker Image                     36                                      [OK]
kubeguide/tomcat-app          Tomcat image for Chapter 1                      29
consol/tomcat-7.0             Tomcat 7.0.57, 8080, "admin/admin"              17                                      [OK]
cloudesire/tomcat             Tomcat server, 6/7/8                            15                                      [OK]
aallam/tomcat-mysql           Debian, Oracle JDK, Tomcat & MySQL              13                                      [OK]
arm32v7/tomcat                Apache Tomcat is an open source implementati…   10
maluuba/tomcat7-java8         Tomcat7 with java8.                             6
rightctrl/tomcat              CentOS , Oracle Java, tomcat application ssl…   6                                       [OK]
arm64v8/tomcat                Apache Tomcat is an open source implementati…   3
jelastic/tomcat               An image of the Tomcat Java application serv…   2
amd64/tomcat                  Apache Tomcat is an open source implementati…   2
cfje/tomcat-resource          Tomcat Concourse Resource                       2
99taxis/tomcat7               Tomcat7                                         1                                       [OK]
oobsri/tomcat8                Testing CI Jobs with different names.           1
camptocamp/tomcat-logback     Docker image for tomcat with logback integra…   1                                       [OK]
chenyufeng/tomcat-centos      tomcat基于centos6的镜像                              1                                       [OK]
ppc64le/tomcat                Apache Tomcat is an open source implementati…   1
appsvc/tomcat                                                                 1
secoresearch/tomcat-varnish   Tomcat and Varnish 5.0                          0                                       [OK]
s390x/tomcat                  Apache Tomcat is an open source implementati…   0
softwareplant/tomcat          Tomcat images for jira-cloud testing            0                                       [OK]
picoded/tomcat7               tomcat7 with jre8 and MANAGER_USER / MANAGER…   0                                       [OK]
[root@albert ~]#                                                                            

1.2 下载镜像

我们可以使用上篇文章使用到的docker pull命令下载Tomcat镜像,此处我们下载最新版本

[root@albert ~]# docker pull tomcat

下载完成后,我们就可以在本地镜像列表里看到 tomcat 的镜像了。

[root@albert ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tomcat              latest              e0bd8b34b4ea        12 days ago         649MB
[root@albert ~]#

1.3 运行Tomcat镜像

[root@albert ~]# docker run -d --name tomcatTest -p 8080:8080 tomcat

参数说明:

-d 后台运行

--name 给容器起一个名字

-p 8080:8080:将主机的 8080 端口映射到容器的 8080 端口。(主机端口:容器内部端口)

 

上图描述了通过浏览器访问到Tomcat的过程,如果在本地能访问,在浏览器不能访问,可以根据上述过程查找问题。

1.4 测试Tomcat是否成功运行

1.4.1 本地测试

[root@albert ~]# curl localhost:8080

1.4.2 浏览器测试

 

由于官方镜像是简化版的,tomcat自带的一些页面已经被删除,所以此处才会出现404页面,能出现404页面说明tomcat已经启动成功。

1.5 停止运行

[root@albert ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
1f63040bbf5b        tomcat              "catalina.sh run"   13 minutes ago      Up 13 minutes       0.0.0.0:8080->8080/tcp   tomcatTest
[root@albert ~]# docker stop 1f63040bbf5b
1f63040bbf5b
[root@albert ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
[root@albert ~]#

 

二. 安装Nginx

2.1 查找镜像

Docker Hub 上查找 Nginx 镜像,我们可以通过 Sort by 查看不同版本的 Nginx,默认的是最新版本 Nginx:latest

 

2.2 下载镜像

我们可以使用上篇文章使用到的docker pull命令下载nginx镜像,此处我们下载最新版本

[root@albert ~]# docker pull nginx

下载完成后,我们就可以在本地镜像列表里看到 nginx的镜像了。

[root@albert ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              bc9a0695f571        10 days ago         133MB
tomcat              latest              e0bd8b34b4ea        2 weeks ago         649MB
[root@albert ~]#

2.3 运行Nginx镜像

[root@albert ~]# docker run -d --name nginxTest -p 8088:80 nginx

参数说明:

-d 后台运行

--name 给容器起一个名字

-p 8088:80:将主机的 8088 端口映射到容器的 80 端口。(主机端口:容器内部端口)

2.4 测试Nginx是否成功运行

2.4.1 本地测试

[root@albert ~]# curl localhost:8088
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>
[root@albert ~]#

2.4.2 浏览器测试

 

2.5 停止运行

[root@albert ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
1fa4c26390a6        nginx               "/docker-entrypoint.…"   7 minutes ago       Up 7 minutes        0.0.0.0:8088->80/tcp   nginxTest
[root@albert ~]# docker stop 1fa4c26390a6
1fa4c26390a6
[root@albert ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
[root@albert ~]#

 

三. 可视化图形工具Portainer

Portainer是一个免费的Docker图形化界面管理工具,利用Portainer可以轻松构建,管理和维护Docker环境(Docker 主机或 Swarm 群集)。

3.1 安装Portainer

官网: https://www.portainer.io/

[root@albert ~]# docker volume create portainer_data
portainer_data
[root@albert ~]# docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
Unable to find image 'portainer/portainer-ce:latest' locally
latest: Pulling from portainer/portainer-ce
d1e017099d17: Pull complete                                                                                                                                                                              b0718b1ef1b0: Pull complete                                                                                                                                                                              Digest: sha256:0ab9d25e9ac7b663a51afc6853875b2055d8812fcaf677d0013eba32d0bf0e0d
Status: Downloaded newer image for portainer/portainer-ce:latest
bc569d37b6ed8ccbbb18456e825018ae5fbe1bf7fb38f9bc1bf058c9f48a70c9
[root@albert ~]#

注意:端口9000是Portainer用于UI访问的常规端口。EDGE代理仅将端口8000用于反向隧道功能。如果您不打算使用边缘代理,则不需要公开端口8000。

3.2 通过浏览器访问

http://你的服务器IP:9000/

3.2.1 设置用户名和密码

 

3.2.2 选择连接到Docker

 

 

3.2.3 查看主机信息

 

3.2.4 管理镜像

 

3.2.5 管理容器

 

剩下的功能大家自己去探索吧,我就不在这里举例了。

 

今天的学习就到这里了,由于本人能力和知识有限,如果有写的不对的地方,还请各位大佬批评指正。如果想继续学习提高,欢迎关注我,每天学习进步一点点,就是领先的开始,加油。如果觉得本文对你有帮助的话,欢迎转发,评论,点赞!!!

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 博客之星2020 设计师:CY__0809 返回首页