Docker的初步了解

更多信息:

本篇算是学习笔记

视频
尚硅谷
配置文件的信息
Spring Boot文档
Docker文档
狂神老师的bilibli账号:如果想学相关的知识可以关注一下

编辑器:IntelliJ IDEA 2020.1



定义

Docker是一个开源的应用容器引擎;
是一个轻量级容器技术;


作用

  • 实现了虚拟机里面的资源隔离,性能高于虚拟机;

  • Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;

  • 运行中的这个镜像称为容器,容器启动是非常快速的;

在这里插入图片描述


关于Docker的一些概念

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

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

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

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

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

在这里插入图片描述


Docker的使用

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

安装Docker

安装Linux虚拟机及配置客户端

链接:https://pan.baidu.com/s/1Ese1_QOxvFbETtm7Mq833A
提取码:1854

VirtualBox-5.1.26-117224-Win.exe是虚拟机软件,不建议安装在C盘
centos7-atguigu.ova是Linux操作系统
SmarTTY-2.2.msi是客户端软件

安装完后导入centos7-atguigu.ova Linux操作系统
在这里插入图片描述

在这里插入图片描述
导入完成后,双击启动,应该会报物理网卡的错误
解决方法:
点击 控制,设置
在这里插入图片描述
在这里插入图片描述

登录linux虚拟机root/123456
为了方便操作,使用客户端连接服务器(不建议安装在C盘)
在这里插入图片描述
在这里插入图片描述
然后再Linux操作系统中重启网络

service network restart

在这里插入图片描述
查看Linux的IP地址

ip addr

在这里插入图片描述
需要注意的是如果你连接的是wifi,每次启动可能都有重写连接
在这里插入图片描述
在这里插入图片描述
保持Linux虚拟机开启

安装Docker

查看centOS版本,必须高于3.10才能安装Docker

uname -r

如果不是,输入下面的命令升级软件及内核

yum update

在这里插入图片描述
安装docker

yum install docker

等待安装完(建议安装过程中,不切换到其他界面或滑动鼠标,指到安装完)
在这里插入图片描述
允许它下载
在这里插入图片描述
之后有让你输入y/d/N的选择,你选择y就行。

安装完成
在这里插入图片描述

启动docker

systemctl start docker

在这里插入图片描述
如果出现Job for docker.service failed because the control process exited with error code.
https://blog.csdn.net/zhangbeizhen18/article/details/85239758

查看版本号

docker -v

在这里插入图片描述

设置docker为开机启动项

systemctl enable docker

在这里插入图片描述
如果你想停止docker你可以用

stop docker

Docker操作常用命令

镜像操作命令

操作命令说明
检索docker search 关键字 eg:docker search redis我们经常去docker hub上检索镜像的详细信息,如镜像的TAG。
拉取docker pull 镜像名:tag(tag是版本):tag是可选的,tag表示标签,多为软件的版本,默认是latest
列表docker images查看所有本地镜像
删除docker rmi image-id删除指定的本地镜像
docker search mysql

在这里插入图片描述
等同于我们在 docker hub上搜索
在这里插入图片描述
下载镜像(拉取)

docker pull mysql

在这里插入图片描述
查看Linux中docker的镜像

docker images

在这里插入图片描述
删除Linux中docker的镜像(演示)

docker rmi a347a5928046 

在这里插入图片描述

容器操作命令

软件镜像----运行镜像----产生一个容器;

例子

下载tomcat容器

  1. 查找镜像文件
docker search tomcat
  1. 拉取镜像文件
    默认下载的是最新版
docker pull tomcat

在这里插入图片描述

  1. 根据镜像启动容器
docker run --name mytomcat -d tomcat:latest

在这里插入图片描述

  1. 查看运行中的容器
docker ps

在这里插入图片描述

但是tomcat是docker容器中的tomcat,所以我们访问虚拟机的8080访问不到docker里面,我们需要做一个映射。

  1. 启动和停止容器
docker start  (容器id或是容器的名字)
docker stop  (容器id或是容器的名字)
  1. 查看所有的容器的状态(包括停止或退出的)
docker ps -a
  1. 删除容器(容器的状态是退出才行)
docker rm (容器id)
  1. 添加映射后的容器启动
    注:一个镜像可以指定多个容器:也就是说我们可以让8889、8887指定8080端口
docker run -d -p 8888:8080 tomcat

在这里插入图片描述
运行结果
在这里插入图片描述
查看Linux防火墙

service firewalld status

在这里插入图片描述

Linux防火墙关闭

service firewalld stop

然后我们就可以在浏览器中访问虚拟机的tomcat,访问地址应该是 [虚拟机ip]:8888
在这里插入图片描述
9. 查看容器日志

docker logs (容器日志)

在这里插入图片描述


Mysql安装

安装mysql镜像文件

docker pull mysql

启动运行镜像文件

错误示例
docker run --name mysql01-d mysql

例子

正确实例
docker run -p 3306:3306 --name mysql02 -e MYSQL_ROOT_PASSWORD=root -d mysql
模板
$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

… where some-mysql is the name you want to assign to your container,
my-secret-pw is the password to be set for the MySQL root user and tag
is the tag specifying the MySQL version you want. See the list above
for relevant tags.
在这里插入图片描述

设置完成之后,我们就可以使用mysql的数据库管理工具来连接虚拟机的数据库
在这里插入图片描述

docker run --name mysql03 -v /conf/mysql:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
把主机的/conf/mysql文件夹挂载到 mysqldocker容器的/etc/mysql/conf.d文件夹里面
改mysql的配置文件就只需要把mysql配置文件放在自定义的文件夹下(/conf/mysql)

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
指定mysql的一些配置参数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值