服务器维护,服务器代维,安全设置,漏洞扫描,入侵检测服务

运维之家

 找回密码
 注册
搜索
查看: 5670|回复: 0

centos 安装并操作docker 同步文件夹 并部署tomcat

[复制链接]
dirtysea 发表于 2017-10-8 14:43:10 | 显示全部楼层 |阅读模式

1、安装docker

yum -y install docker

2、启动docker 并设置为开机启动

service docker start

chkconfig docker on

或者

systemctl start docker.service

systemctl enable docker.service

3、安装镜像centos

docker pull centos

  安装成功后 通过命令 docker images 查看centos 的镜像是否成功安装

4、启动容器,并进入容器控制台

docker run -i -t centos /bin/bash




centOS 容器已经被启动,并且我们得到了 bash 提示符。在 docker 命令中我们使用了 “-i 捕获标准输入输出”和 “-t 分配一个终端或控制台”选项。若要断开与容器的连接,输入 exit。

  • [root@cd05639b3f5c /]#exit
  • exit
输入exit 会退出容器


5、查询docker中运行的容器

docker ps


6、退出控制台后如何进入容器

docker 中用 nsenter  工具进入容器控制台

首先

docker inspect --format "{{ .State.Pid }}" 容器id

获取docker容器的进程

nsenter --target xxx(进程号) --mount --uts --ipc --net --pid

接着就进入docker容器了


7、接着在容器中,与宿主机同步文件夹,才能用来部署项目

创建一个普通容器当做数据卷容器(就是专门用来同步文件的容器吧)
docker run -v /home/docker_files:/usr/docker_files  --name dataVol centos /bin/bash
讲解:
docker run -v  (本机要共享的目录):(容器上同步的目录)  --name (数据卷容器的名称) centos /bin/bash


接着创建容器并且设置使用这个数据卷
docker run -it --volumes-from dataVol centos /bin/bash
然后在/usr/docker_files目录下就可以看到同步的文件了


坑!!!:
在容器中会遇到
访问共享目录中ls命令及一些其他操作发生问题(访问/usr/docker_files 目录时)
cannot open directory .: Permission denied


这时候要在宿主机上设置
selinux的状态
getenforce 可以查看状态
setenforce 命令设置临时关闭,不用重启生效。
setenforce 0
这样就可以正常的同步并且操作同步文件夹内的数据了





8、docker中批量删除空的镜像

docker rmi $(docker images | awk '/^<none>/ { print $3 }')

docker rmi 镜像id
docker rmi REPOSITORY:TAG

9、把容器的状态保存进镜像,以便下次启动容器就无需重复配置或同步一些文件了
docker commit 725437005b50 centos:my_centos04
讲解

docker commit 容器idREPOSITORY:TAG

下次启动保存后的容器即可
docker run -it --volumes-from dataVol centos:my_centos04 /bin/bash
讲解:
docker run -it --volumes-from dataVol  REPOSITORY:TAG /bin/bash


10、docker 中修改image 镜像的名称
docker tag 8a57cd92be4d centos:my_centos03
讲解:

docker tag image的id REPOSITORY:TAG


这样子docker 安装 同步文件夹 和操作容器  从宿主机进入容器控制台的方法就解决了

接下去就可以将docker 当做小型虚拟机

通过同步文件夹把tomcat 和jdk 同步到docker项目 并启动tomcat


重要的是启动容器时需要配置容器对外映射的端口号


docker run -it --volumes-from dataVol -p 8080:8080 centos:my_centos04 /bin/bash
讲解

docker run -it --volumes-from 数据卷名称 -p 端口号:端口号 REPOSITORY:TAG /bin/bash


-p后面的端口
把宿主端口号暴露给docker的端口号
之后就可以使用宿主主机的IP地址和这个端口来访问docker容器

启动后就可以通过浏览器输入

http://IP地址:8081/

就会出现tomcat的页面啦



搞定!





http://blog.csdn.net/zjs40/article/details/52621885


您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|运维之家

GMT+8, 2024-3-29 15:32 , Processed in 0.138025 second(s), 14 queries .

Powered by Dirtysea

© 2008-2020 Dirtysea.com.

快速回复 返回顶部 返回列表