资讯专栏INFORMATION COLUMN

【记录】 Docker 的安装和通过 Docker 使用 Tomcat and mongoDB 的

AprilJ / 1596人阅读

摘要:该命令代表启动,并且设置启动名称和端口号,并将主机当前目录下的目录挂载到容器的下的目录中,这样以后修改只需要修改该目录下的相关文件即可。

CentOS 7 下安装 Docker

摘自 菜鸟教程

Docker 要求 CentOS 系统的内核版本高于 3.10

通过 uname -r 命令查看你当前的内核版本

[root@runoob ~]# uname -r 

移除旧的版本

[root@runoob ~]# yum remove docker

安装一些必要的系统工具

[root@runoob ~]# yum install -y yum-utils device-mapper-persistent-data lvm2

添加软件源信息

[root@runoob ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新 yum 缓存

[root@runoob ~]# yum makecache fast

安装 Docker-ce

[root@runoob ~]# yum -y install docker-ce

启动 Docker 后台服务

[root@runoob ~]# systemctl start docker

测试运行 hello-world

[root@runoob ~]# docker run hello-world
Docker 中安装以及配置 Tomcat 安装 Tomcat

查找Docker Hub上的tomcat镜像

docker search tomcat

拉取官方的镜像

docker pull tomcat

这样 Tomcat 就被安装好了,接下来进行自定义配置

配置 Tomcat

首先在主机挑选任意一个喜欢的位置建立 tomcat 文件夹,该文件夹中放置安装 tomcat 的三个配置文件夹,分别为 conf、logs、webapps 三个文件夹。这三个文件夹可以在 windows 系统中安装的 tomcat 目录中拷贝一份进来。然后执行以下命令。

该命令代表启动 tomcat,并且设置启动名称 name 和端口号 port,并将主机当前目录下的 conf、logs、webapp 目录挂载到容器的 /usr/local/tomcat/ 下的 conf、logs、webapp 目录中,

这样以后修改 tomcat 只需要修改该目录下的相关文件即可。

docker run --name tomcat -p 8080:8080 -v $PWD/webapps:/usr/local/tomcat/webapps -v $PWD/logs:/usr/local/tomcat/logs -v $PWD/conf:/usr/local/tomcat/conf -d tomcat 

通过运行以上命令只之后,可以通过 docker ps 查看正在运行的容器,如果有看到 tomcat 则启动成功,可以通过服务器公网 IP地址 + 设置的端口号进行访问

注意:执行该命令需要在本步骤新建的 tomcat 文件夹中执行。
修改配置文件并重新启动 Tomcat

有时候我们需要修改 tomcat 的端口号或其它配置,即修改 server.xml 文件,那需要怎么做呢?

首先如果当前有正在运行的 Tomcat,则需要停止并删除该容器(删除该容器并不是删除镜像,因此尽管删除)

docker stop 00fe9ba25a8c // 停止当前启动的 tomcat,后跟 tomcat 容器 ID,用 name 也可以
docker rm 00fe9ba25a8c // 删除 tomcat 容器

删除过后去到之前在主机创建的 tomcat 文件夹中,进入 conf 目录,并通过 vim 命令修改 server.xml 文件,在里面可以修改端口号和 docBase 等配置

修改成功之后回到 tomcat 目录下,运行下面的命令即可开启新配置的 tomcat, -p 后跟你修改过后的端口号

docker run --name tomcat -p 8081:8081 -v $PWD/webapps:/usr/local/tomcat/webapps -v $PWD/logs:/usr/local/tomcat/logs -v $PWD/conf:/usr/local/tomcat/conf -d tomcat 
配置项目到 Tomcat

当我们需要将自己的项目跑起来的时候怎么办呢?

只需要将自己项目的文件放入 tomcat 文件夹下的 webapps 文件夹中即可,立即生效,不需要重启 tomcat 服务器。

Docker 中使用 mongoDB 安装 mongoDB

查找Docker Hub上的 mongo 镜像

docker search mongo

拉取官方的镜像

docker pull mongo
注意:在拉取官网镜像的时候可以在 mongo 后跟 :X.X,即跟上版本号,例如 mongo:3.2,跟版本号的 TAG 就为版本号。不跟默认拉取最新版本,默认 TAG 名称为 latest ,TAG 名称可以通过 docker images 查看
使用 mongo 镜像

在自己喜欢的目录下运行以下命令,将主机中当前目录下的db挂载到容器的/data/db,作为mongo数据存储目录

-p 27017:27017 :将容器的 27017 端口映射到主机的 27017 端口

:latest 代表 TAG 名称,可跟可不跟

docker run -p 27017:27017 -v $PWD/db:/data/db -d mongo:latest

查看启动情况

docker ps

使用mongo镜像执行mongo 命令连接到刚启动的容器,主机IP为172.17.0.1

docker run -it mongo:latest mongo --host 172.17.0.1
Docker 卸载安装镜像文件

卸载安装镜像文件需要先删除容器再删除镜像

以我删除 nginx 为例

第一步:停止 nginx (因为我的 nginx 在运行中,运行中的容器可以通过 docker ps 查看)
docker stop 00fe9ba25a8c // 后跟容器 ID
第二步:删除 nginx 容器
docker rm 00fe9ba25a8c // 后跟容器 ID

删除容器成功后,通过 docker images 还能看到 nginx 依然存在,因为还没有删除镜像

第三步:删除 nginx 镜像
docker rmi 00fe9ba25a8c // 该容器 ID 通过 docker images 查看
Docker 常用基本命令
从Docker Hub查找 mongo 镜像
[root@runoob ~]# docker search mongo

查看本地镜像列表

[root@runoob ~]# docker images

显示所有容器

[root@runoob ~]# docker ps -a

显示所有在运行的容器

[root@runoob ~]# docker ps

拷贝主机的/root/wd_app文件到tomcat容器(容器ID为96f7f14e99ab)的/usr/local/tomcat/webapps目录

[root@runoob ~]# docker cp /root/wd_app 96f7f14e99ab:/usr/local/tomcat/webapps

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27550.html

相关文章

  • 为什么要用docker

    摘要:那容器和镜像有什么关系网上说是类和对象的关系,没错,但是这样的比喻没什么实际卵用。针对这个问题,项目组决定把开发环境迁移到中,在测试环境中测试无误后,把镜像打包发布到正式环境中,解决了环境不同导致的问题。 本文旨在用最通俗的语言讲述最枯燥的基本知识 最近Docker突然火得不得了,到处都是谈论Docker的声音,相信大家和小编一样的心情,看这个东西有点高大上,但尝试去阅读Docker文...

    Bryan 评论0 收藏0
  • Docker 应用是安全吗?

    摘要:如今,多样化的攻击手段层出不穷,传统安全解决方案越来越难以应对网络安全攻击。自适应安全平台集成了预测预防检测和响应的能力,为您提供精准持续可视化的安全防护。 近一年来,Docker 已经逐渐成为 container 界的事实标准,成为技术人员不可或缺的技能之一,就像 Docker 宣称的那样,「Build,Ship,and Run Any App,Anywhere」,容器极大简化了环境...

    darry 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<