什么是Docker简单说:Docker就是一个虚拟机,专业说:它是一个开源的容器平台。它和我们常用的VMware有很多相似的地方。 名词解释镜像/images由本体打包出来的文件。并不是文件本身,但是具有该文件的功能。举个不太贴切的例子,就像镜子里的你,虽然不是真的你本人,但是你做的任何动作他也会做。
仓库/DockerHub存放镜像的地方,类似GitHub。包括MySQL、Tomcat、Redis、Nginx等等。有很多第三方提供的镜像,您可以通过pull 命令下载使用。您也可以通过push 命令上传镜像到仓库。
容器/container运行的虚拟机,它是由镜像运行时生成的,并且一个镜像可以运行出多个容器。
Docker File指定镜像是如何构建的。简单说就是把你的项目通过build 命令构建成镜像【然后镜像run 以后就会变成容器,在容器中运行你的项目】
tar文件可以把镜像文件打包成tar文件
他们之间的关系: Docker特点Docker虚拟技术与传统虚拟技术的区别Docker思想来源于集装箱,核心思想是隔离。 Docker思想开发人员把项目打成war包+环境打包+数据打包成镜像,上传到DockerHub仓库,运维或者测试只需要下载开发的镜像,然后运行就可以。
以下内容为笔记,未经实际操作 Docker安装以centos7为例 设置服务器IP地址 1、修改 BOOTPROTO=static ONBOOT=yes 1表示使用静态IP 2表示重启时自动启用静态IP 2、增加 IPADDR=根据当前服务网络IP设置 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 DNS1=8.8.8.8 DNS2=114.114.114.114
more ifcfg-ens33 命令可以查看文件修改后的内容
- cd /etc/sysconfig/network-scripts
重启网络服务systemctl restart network.service 关闭防火墙systemctl stop firewalld.service
现在就可以通过xshell进行远程连接了,现在在xshell里操作 安装Docker依赖包yum install -y yum-utils device-mapper-persistent-data lvm2
安装国内下载源yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装Dockeryum install -y docker-ce
启动systemctl start docker
验证docker version
Docker应用- 在开始测试前,在服务器安装Docker,Docker版本与开发版本一致
Docker常用命令
docker search 镜像名称
docker pull 镜像名称
docker images
docker run -d -p 9999:8080 镜像ID
-d : 在后台运行
-p 9999:8080 : 服务器端口映射到容器的端口
执行后会返回一长串数,证明已经正常运行
docker ps
docker ps -a
docker logs -f 容器ID
docker exec -it 容器ID /bin/bash
ls -l 就可以查看有哪些文件了
d 开头表示文件夹
- 开头表示文件
exit
docker start/stop/restart 容器ID
Docker部署项目# 先查看镜像ID docker images # 运行 docker run -d -p 9999:8080 镜像ID # 查看正在运行的容器 docker ps # 进入容器 docker exec -it 容器ID /bin/bash # 查看文件【1】 ls -l # 进入放项目的目录 cd 文件夹名 # 需要上传war文件,先退出容器 # 下载一个上传工具lrzsz exit # 下载lrzsz(下载过程中都选y) yum install lrzsz # 下载好以后切换到根目录 cd /opt # 查看根目录文件 ls # 上传war包 rz # 查看是否上传成功 ls # 查看正在运行的容器(方便复制ID) docker ps # 复制文件到容器下对应的文件夹 # 文件夹路径可以在上面【1】看到 docker cp 文件名.war 容器ID:文件夹路径 # 进入容器查看 docker exec -it 容器ID /bin/bash # 查看文件 ls -l # 进入放文件的文件夹 cd 文件夹名 # 查看文件(确认是否复制过来了) # 一般都是复制到Tomcat的webapps文件夹中 # 如果Tomcat正在运行,会自动将war包解包 ls -l
现在就已经把项目部署到了测试环境了。 访问项目 http://IPADDR中设置的IP地址:9999/项目名称
|