一.centos安装docker
参考博客:https://blog.csdn.net/m0_47010003/article/details/127775185
1.设置一下下载Docker的镜像源
设置下载的镜像源为国内的阿里云,如果不设置,会默认去Docker的官方下载
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2.安装Docker
首先,
下面这个命令是将软件包信息提前在本地缓存一份,用来提高搜索安装软件的速度
yum makecache fast
提高安装速度以后,安装docker相关的。(docker-ce 社区版 而ee是企业版)
yum install docker-ce docker-ce-cli containerd.io
3.启动,并设置为开机自动启动,测试
3.1 启动Docker服务
systemctl start docker
3.2 设置开机自动启动
systemctl enable docker
3.3 测试
docker run hello-world
如果出现以下代码,说明运行成功:
二.阿里云镜像加速
1.登录阿里云账号:https://dev.aliyun.com
2.进入控制台
3.搜索:容器镜像服务
4.进入到这个界面:
5.官网教程(按步骤来)
1.sudo mkdir -p /etc/docker
2.sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://uo895hbl.mirror.aliyuncs.com"]
}
EOF
3.sudo systemctl daemon-reload
4.sudo systemctl restart docker
6.验证是否设置成功
1.输入docker info,以下情况即为替换成功
三.下载运行tomcat
1.可以去官方镜像网站https://hub.docker.com/搜索需要的镜像,这里我们下载tomact8.5的镜像,输入命令docker pull tomcat:8.5 镜像的后面为版本号,也可以为latest(最新),这里不推荐最新,可能会有很多坑
2.输入docker images 即可查看下载的镜像
3.运行镜像,输入命令
docker run -d -p 9090:8080 --name tomcat1 tomcat:8.5
-d :就是以后台运行方式运行 也可以 -t :以交互式运行
-p :暴露端口号第一个9090是暴露linux 的端口号,这样外部才能连接linux
第二个端口号暴露的是容器的端口号,这样linux才能连接容器这样外部就能通过服务器访问容器了
--name:给容器取名
tomcat:8.5:运行时加上版本,指定是这个服务器
4.输入docker ps查看容器的状态
5.docker的tomcat镜像里webapps文件夹下没有东西,都被移动到webapps下的dist文件夹内了,这里我们把它移动到webapps文件夹下
输入命令,进入容器
docker exec -it tomcat1 /bin/bash
将文件夹webapps下的dist文件夹下的内容复制到webapps文件夹中
cp -r webapps.dist/* webapps
6.验证是否成功,打开浏览器,输入服务器的外网ip+设置的tomcat的port
访问成功,大功告成!
四.部署一个web项目
1.编写Dockerfile,我们需要建立一个dockerfile告诉docker需要做什么
1.1.首先创建一个空的项目目录
mkdir docker-demo
1.2.创建一个Dockerfile
touch Dockerfile
1.3.编写Dockerfile
FROM tomcat:8.5
MAINTAINER fwm 5120@qq.com
COPY ssm_yygh.war /usr/local/tomcat/webapps
FROM 镜像 | 指定新镜像所基于的镜像,第一条指令必须为FROM指令,每创建一个镜像就需要一条FROM指令 |
---|---|
MAINTAINER 名字 | 说明新镜像的维护人信息 |
COPY 源文件/目录 目标文件/目录 | 将本地主机上的文件/目录复制到目标地点,源文件/目录要与Dockerfile在相同目录中 |
2.开始构建镜像
2.1在 Dockerfile 文件的存放目录下,执行构建动作。
以下示例,通过目录下的 Dockerfile 构建一个 docker-demo:v1 (镜像名称:镜像标签)。
docker build -t docker-demo:v1 . #别忘记最后的点号,表示当前目录
2.2输入docker images,验证是否成功创建
3.运行镜像
3.1指定端口运行镜像
docker run -d -p 8085:8080 docker-demo --name docker-demov1
-d :就是以后台运行方式运行 也可以 -t :以交互式运行
-p :暴露端口号第一个8085是暴露linux 的端口号,这样外部才能连接linux
第二个端口号暴露的是容器的端口号,这样linux才能连接容器
这样外部就能通过服务器访问容器了
--name:给容器取名
docker-demo:运行时加上镜像,指定是这个服务器
3.2输入docker ps,验证是否成功运行
打开浏览器,输入ip+刚刚指定的端口+项目入口
可以看到,我们的项目已经部署成功了,只是目前报500错误,因为当前还没有部署mysql
工作太忙~后续继续更新mysql