0
点赞
收藏
分享

微信扫一扫

安装docker容器&&docker容器常用命令&&java Springboot项目打包成jar包并部署到docker容器

谁知我新 2022-04-15 阅读 76

Part 1 安装docker容器

如果你的系统没有安装docker容器,可以参考以下操作:

  • 确定你的系统操作系统及版本 CentOS7及以上版本

cat /etc/redhat-release
  • 确保你的系统没有安装过docker容器,否则,需要卸载旧版本

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  • yum安装gcc相关

yum -y install gcc
yum -y install gcc-c++
  • 安装需要的软件包

yum install -y yum-utils
  • 设置stable镜像仓库

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 更新yum软件包索引

yum makecache fast
  • 安装DOCKER CE

yum -y install docker-ce docker-ce-cli containerd.io
  • 启动docker

systemctl start docker
  • 查看docker版本

docker version

至此,docker容器安装成功

Part 2 docker容器常用命令

  • 查看docker容器的所有镜像

docker images
  • 查看docker的运行状态

systemctl status docker
  • 启动docker

#启动docker之前最好先查看docker的运行状态
systemctl start docker
  • 关闭docker

systemctl stop docker
  • 拉取docker云仓库的镜像

docker pull 镜像名字[:TAG]
举例:docker pull mysql:8.0.26
没有TAG就是最新版
举例:docker pull mysql
拉取最新版mysql
  • 编写DockerFile文件并构建成新的版本镜像

docker build -t 新镜像名字:TAG .
注意,上面TAG后面有个空格,有个点
举例: docker build -t qin_docker:1.1 .
  • 运行容器简单版

 docker run -d -p 9000:9000 qin_docker:1.1
 第一个9000为主机映射端口;第二个9000为docker容器端口
  • 运行容器进阶版

docker run -d -p 3306:3306 --privileged=true -v /qin/mysql/log:/var/log/mysql -v /qin/mysql/data:/var/lib/mysql -v /qin/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456  --name mysql mysql:8.0.26

命令说明: --name mysql 给运行的容器起个名字,方便以后启动或停止(docker stop mysql表示停止该容器的进程),mysql容器实例一起存在,只要执行命令(docker start mysql 即可重新启动该容器实例) --privileged=true -v /qin/mysql/log:/var/log/mysql -v /qin/mysql/data:/var/lib/mysql -v /qin/mysql/conf:/etc/mysql/conf.d -e

开启容器数据卷实现主机和docker容器文件同步映射,任何一方文件的改变均会同步影响另一方

  • 查看当前docker运行的容器实例

docker ps

 

总结:

  • 初学者很容易弄混docker镜像和docker运行实例;

  • docker images 指令展示的docker的所有镜像,即docker容器上有多少可以运行的镜像;

  • docker ps 指令展示的是当前docker容器正在运行的容器实例。

  • 说明:一个镜像可以运行无数个docker实例。(其实这也是docker的精妙之处)

Part 3 java Springboot项目打包成jar包并部署到docker容器

  • java jar包类型的项目部署到服务器

    • 准备mysql数据库环境,配置MySQL文件(如果需要导入数据库,可以通过navicat工具进行远程连接,并新建数据库,运行sql文件),后续分享如何利用docker安装mysql主从复制

    • 准备redis环境,配置redis的配置文件(后续分享如何利用docker安装redis集群)

    • 将最新项目的jar包放到 Dockerfile 文件相同目录下

      • 目前位置举例说明:

 

Dockerfile文件已全部配置好,无需任何修改,除了修改端口号或者更改jar包名

  • Dockerfile文件内容

 

  • 然后,直接生成新的镜像,注意名字和版本号不用跟docker镜像冲突即可。

docker build -t 新镜像名字:TAG .
举例:docker build -t qin_docker:2.1 .

生成镜像成功后,执行docker images 查看镜像是否生成成功

  • 运行你的新镜像实例

docker run -d -p 9000:9000 qin_docker:2.1

总结:

第一步,将要部署的项目重新打包成jar包

第二步,将新打包的jar包 放到 Dockerfile 文件相同目录下,重新生成新的镜像

第三步,编写Dockerfile 文件(举例项目已写好)

第四步,启动mysql和redis实例(可以提前做),即运行项目所需环境

第五步,运行新的镜像实例

第六步,docker ps 查看三个镜像实例是否都存在,存在即完成。

举报

相关推荐

0 条评论