docker从安装到部署一个项目

2023-10-27

一.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

如果出现以下代码,说明运行成功:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qEEX2S28-1678243523307)(C:\Users\bangsun\Desktop\个人\docker\图片1.png)]

二.阿里云镜像加速

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:8085 docker-demo:v1 --name docker-demov1
-d :就是以后台运行方式运行  也可以 -t :以交互式运行
-p :暴露端口号第一个8085是暴露linux 的端口号,这样外部才能连接linux
			 第二个端口号暴露的是容器的端口号,这样linux才能连接容器
	这样外部就能通过服务器访问容器了
--name:给容器取名
docker-demo:运行时加上镜像,指定是这个服务器

3.2输入docker ps,验证是否成功运行

在这里插入图片描述

打开浏览器,输入ip+刚刚指定的端口+项目入口
在这里插入图片描述

可以看到,我们的项目已经部署成功了,只是目前报500错误,因为当前还没有部署mysql

工作太忙~后续继续更新mysql

五.下载运行mysql

1.可以去官方镜像网站https://hub.docker.com/搜索需要的镜像,这里我们下载mysql:5.7的镜像
输入命令docker docker pull mysql:5.7 镜像的后面为版本号,也可以为latest(最新)

#下载mysql,版本号5.7
docker pull mysql:5.7

在这里插入图片描述

2.输入docker images 即可查看下载的镜像

在这里插入图片描述

3.运行镜像,输入命令

docker run -d -p 3306:3306 \
--privileged=true \
-v /docker/mysql/conf/my.cnf:/etc/my.cnf \
-v /docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD='root'  \
--name mysql mysql:5.7


# --privileged=true 打开root的权限
# 表示映射宿主机3316端口到容器内部的3306端口,mysql连接密码为root,配置了容器my.cnf和mysql数据目录在宿主机的链接

4.输入docker ps查看容器的状态

在这里插入图片描述

5.到这里我们就启动好了,用navicat测试一下连接
在这里插入图片描述
6.把项目的数据库放进去,再改一下项目的jdbc连接配置,大功告成!
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

docker从安装到部署一个项目 的相关文章

随机推荐