Docker之旅

前言

因为在公司中用到,而且百度资料各种参差不齐,这里只是以我个人的情况,总结一个大体的学习方向,入个门,能直接运用到工作中。
鄙人渣渣测试一枚,第一次接触到docker是在2017年,那时候是公司内部听架构师讲了下,知道有这个东西,维护环境很方便,环境不是我在管理,后面就不了了之。真正对docker去了解,是在去年,新公司的使用的微服务架构,都是基于镜像去构建,基于这种情况下,对docker进行大概的了解。如下对docker学习以及在公司中常用到的一些服务及命令记录如下。

一、docker基本介绍

1、环境,使用的是阿里云 1C 2G centos7.6
2、菜鸟教程 如果你只想对docker有个基本了解,在公司基本能用就行的,学会以下几个标注的点,学以致用。
在这里插入图片描述
3、docker个人见解

  • 使用很方便,安装也很快捷
  • 基本构建好的镜像,可以直接拿来用,在公司或会在家,不被环境的困扰
  • 是开源的应用容器,安装服务,占用资源少
  • 但是多个容器的时候,就不方便管理,后面投入到了k8s怀抱,这是后话了

4、centos 安装docker
网上有很多种方法,基本都试过,最方便的还是

yum install docker

(如果安装很快,而且成功,不用管下面,直接跳过)
这种会把docker相关的所有依赖全部安装完成,而且安装快,如果用的不是阿里云服务器,可能需要添加源地址了,这里推荐国内阿里源地址

yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

直接这么去添加会报错,需要安装一些软件包

yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

注解:命令行中 \ ,代表的是换行,直接复制到命令行中即可

5、添加docker镜像加速,使用的阿里云,基于国内网络,建议添加,不然会出现部分镜像pull不下来的情况。需要去阿里云注册个人账号,之后进入控制台搜索“容器”,选择容器镜像服务。
在这里插入图片描述

二、docker用法

1、我现在需要安装mysql数据库,但是不想再按网上一条命令执行下载,docker可以快速帮我实现下载安装

docker pull mysql

这里下载的是最新版本,想下载以前的版本,去docker镜像官网,搜索mysql,下载相关版本的mysql
在这里插入图片描述
2、这里介绍docker镜像几个操作命令

  • 列出本机上的镜像:docker images
  • 获取镜像:docker pull 镜像名称:版本号
  • 删除镜像:docker rmi 镜像名称

在这里插入图片描述

  • REPOSITORY 是指仓库名字;
  • TAG 一般指版本号;
  • IMAGE ID 是指镜像 ID;
  • CREATED 指镜像创建时间;
  • SIZE 指镜像大小;

4、镜像下载之后,运行容器,启动mysql服务,如果没有先下载镜像,直接运行,docker会先下载镜像,然后启动容器

docker run –itd --name mysql-test –p 3306:3306 –e MYSQL_ROOT_PASSWORD=123456 mysql

5、介绍几个常用的docker容器操作命令

  • 拉取指定版本镜像:docker pull centos:centos7
  • 启动容器:docker run –itd -–name centos-test centos:centos7
  • 查看容器:docker ps
  • 进入容器:docker exec –it 容器id /bin/bash
  • 停止容器:docker stop 容器id
  • 重启容器:docker restart 容器id
  • 删除容器(已停止的容器):docker rm –f 容器id

批量删除容器

docker stop $(docker ps -aq)
docker rm $(docker ps -aq)

批量删除镜像

docker rmi $(docker image ls -a -q)  

需要没有容器运行的情况下

6、Dockerfile、Docker 镜像、Docker 容器的区别
这里引用别人的介绍,他解释的很形象。
https://kaiwu.lagou.com/course/courseInfo.htm?courseId=600#/detail/pc?id=6164
在这里插入图片描述
7、Dockerfile制作步骤:
新建Dockerfile文件
打开Dockerfile文件,里面添加相关命令
在Dockerfile文件目录下,执行 docker build -t 镜像名称 .
注意不要忽略命令最后的点 (.)
Dockerfile参考:
在这里插入图片描述

三、docker compose

1、Compose是用于定义和运行多容器Docker应用程序的工具,通过YML文件来配置应用程序需要的所有服务

yum install docker-compose

2、一个个下载镜像,配置服务端口,太麻烦,而且也记不了那么多,全写在一个YML文件里,批量执行。
注意version版本2和3,格式有稍许不一样,基于这种格式,可以把常用的服务,全部写在yml文件里,具体的配置参数,根据需要进行添加,几个常用的ports(外部跟容器对接的端口,或者说是映射端口),volumes(文件存放路径),expose(容器内暴露的端口),environment(环境变量)。
后台执行服务:

docker-compose up -d 

在这里插入图片描述
在这里插入图片描述

四、docker学习思路

学习docker总体思路,了解docker的镜像和容器,镜像需要从仓库里面下载,或者自己制作(Dockefile),设置相应的端口和数据存放路径,启动容器,容器出现问题,查看容器日志(docker logs 容器id)。通过docker-compose,把需要的服务通过YML文件编排好,批量启动,统一进行管理。docker先告一段落,余墨记。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值