Docker学习及安装

Docker概述

Docker是一个用于开发,交付和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助Docker,您可以以与管理应用程序相同的方式来管理基础架构。通过利用Docker的快速交付,测试和部署代码的方法,您可以显着减少编写代码和在生产环境中运行代码之间的延迟。

Docker通常用于如下场景:

  • web应用的自动化打包和发布;
  • 自动化测试和持续集成、发布;
  • 在服务型环境中部署和调整数据库或其他的后台应用;
  • 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。

Docker中三个基本的概念:

  • Image(镜像)
  • Container(容器)
  • Repository(仓库)

镜像是Docker运行容器的前提,仓库是存放镜像的场所。

使用Docker的步骤:

1)安装Docker

首先查看内核版本,Docker支持 64 位版本 CentOS 7/8,并且要求内核版本不低于 3.10

安装yum-utils软件包(提供yum-config-manager 实用程序)并设置稳定的存储库。

yum install -y yum-utils

由于网络原因,这里使用国内yum源

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

 sed -i 's/download.docker.com/mirrors.aliyun.com/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

 清除缓存

yum clean all     # 清除系统所有的yum缓存
yum makecache     # 生成yum缓存

安装docker

yum install docker-ce docker-ce-cli containerd.io

安装完成,测试Docker是否安装正确

systemctl start docker    # 启动docker

docker run --rm hello-world

 如能正常输出以上信息,则说明安装成功。

Docker换源

/etc/docker/daemon.json 中写入如下内容(如果文件不存在则新建该文件)

{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://cr.console.aliyun.com",
    "https://registry.docker-cn.com"
  ]
}

之后重新启动服务。

systemctl daemon-reload
systemctl restart docker

2)去Docker仓库下载软件对应的镜像

下载一个mysql镜像

docker pull mysql:5.7.31

查看镜像列表

docker images

3)使用Docker运行这个镜像

运行mysql镜像

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

 使用Navicat连接数据库进行测试

 连接成功

停止容器

4)Docker基础命令总结

docker images    #列出镜像列表
docker search 镜像名  #查找镜像
docker pull 镜像名  #下载镜像
docker run 镜像名  #将镜像放入容器中,然后将容器启动
docker ps  #查看正在运行的容器
docker ps -a  #查看所有容器
docker exec -it 容器ID /bin/bash  #进入到容器
docker start 容器名称或容器ID  #启动容器
docker stop 容器名称或容器ID  #停止容器
docker rmi 镜像ID    #删除镜像
docker rm 容器ID    #删除容器

参考文档:

https://yeasy.gitbook.io/docker_practice/install/centos
https://docs.docker.com/engine/install/centos/
https://www.docker.org.cn/index.html

原文地址:https://www.cnblogs.com/ye-xin/p/14751885.html