【SpringBoot笔记】五、SpringBoot与docker

五、SpringBoot与docker

1、docker简介

Docker是一个开源的应用容器引擎

Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像。运行中的这个镜像称为容器,容器启动的是非常快速的,类似windows里面的ghost系统

2、核心概念

docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);

docker客户端(Client):连接docker主机进行操作;

docker仓库(Registry):用来保存各种打包好的软件镜像;

docker镜像(Images):软件打包好的镜像,放在docker仓库中;

docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用;

使用Docker的步骤:

  1. 安装docker
  2. 去docker仓库找到这个软件对应的镜像;
  3. 使用docker运行这个镜像,这个镜像就会生成一个docker容器;
  4. 对容器的启动停止就是对这个软件的启动停止;

3、安装docker

  1. 安装linux虚拟机

    1)安装virtualBox

    2)导入虚拟机文件cento7

    3)双击启动linux虚拟机;使用root/123456登录

    4)使用客户端连接linux服务器进行命令操作

    5)设置虚拟机网络

     桥接网络->选好网卡->接入网线
    
    1. 设置好网络以后使用命令重启虚拟机的网络

      service network restart

    7)查看linux的ip地址

     ip addr
    

    8)使用客户端连接

  2. 在虚拟机上安装docker

    1)检查内核版本,必须是3.10及以上版本

     uname -r
    

    2)安装docker

     yum install docker
    

    3)输入y确认安装

    4)启动docker

     systemctl start docker
    

    5)docker开机启动

     systemctl enable docker
    

    6)停止docker

     systemctl stop docker
    

4.docker常用操作

1.镜像操作

检索:相当于再docker hub上检索镜像的详细信息

docker search 关键字

拉取:下载,tag是可选,tag表示标签,默认是latest

docker pull 镜像名:tag

列表:查看所有本地镜像

docker images

删除:删除指定的本地镜像

docker rmi image-id

2.容器操作

软件镜像->运行镜像->产生一个容器(正在运行的软件)

步骤:

  1. 搜索镜像

     docker search tomcat
    
  2. 下载镜像

     docker pull tomcat
    
  3. 根据镜像启动容器(–name:后面跟自定义容器名;-d:后台运行)

     docker run --name mytomcat -d tomcat:latest
    
  4. 查看运行中的容器

     docker ps
    
  5. 停止运行中的容器

     docker stop mytomcat
    
  6. 查看所有的容器

     docker ps -a
    
  7. 启动容器

     docker start mytomcat
    
  8. 删除容器

     docker rm mytomcat 
    
  9. 启动一个做了端口映射的tomcat(-d:后台运行;-p:主机端口映射到容器端口【主机端口:容器内部的端口】)

     docker run --name mytomcat -d -p 8888:8080 tomcat
    
  10. 查看防火墙状态

    service firewalld status;查看防火墙状态
    service firewalld stop;关闭防火墙
    
  11. 查看容器的日志

    docker logs container-name/container-id
    

5. 环境搭建

安装mysql

docker pull mysql

错误的启动

docker run --name mysql01 -d mysql

2020-04-20 07:42:46+00:00 [ERROR] [Entrypoint]: Database is uninitialized and password option is not specified
    You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD

正确的启动(做了端口映射)

docker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

几个其他的高级操作:

docker run --name mysql03 -v /my/cutom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 mysql:tag

把主机的/my/cutom文件夹挂载到mysqldocker容器的/etc/mysql/conf.d文件夹里面,这样启动mysql就会按照主机路径下的配置文件启动,将配置文件合并

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:tag --character-set-server=utf8m64 --collation-server=utf8m64_unicode_ci
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值