Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Docker实践之01-入门介绍

Docker实践之01-入门介绍

作者头像
编程随笔
发布于 2019-08-14 08:03:59
发布于 2019-08-14 08:03:59
1K00
代码可运行
举报
文章被收录于专栏:后端开发随笔后端开发随笔
运行总次数:0
代码可运行

目录

一.Docker概述

Docker是利用Linux内核技术实现的操作系统层级的虚拟化

Docker三大组件:镜像,容器,仓库。

镜像

镜像是由多层存储所构成,下载也是一层层的去下载,并非单一文件。 镜像的基础是底层AUFS的支持.

容器

使用镜像运行的实例,镜像与容器的关系类比Java中类与对象的关系。

仓库

https://docs.docker.com/registry/ 介绍什么是Docker Registry及如何使用

1.常用的Docker镜像仓库公开服务

2.国内镜像加速器和镜像公开服务 国内云服务上提供的针对Docker Hub的镜像服务,被称为加速器。 使用加速器会直接从国内的地址下载Docker Hub的镜像,比直接从Docker Hub下载速度会提高很多。国内的加速器包括:

国内也有一些云服务商提供类似于Docker Hub的公开服务:

二.安装Docker

1.在CentOS上安装Docker

Docker CE支持64位版本CentOS 7,并且要求内核版本不低于3.10。 OS:CentOS Linux release 7.4.1708 (Core) 内核版本:Linux version 3.10.0-693.el7.x86_64

(1)在正式开始安装之前,先添加国内的yum源(直接使用官方源,下载非常慢):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ wget https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
$ mv docker-ce.repo /etc/yum.repos.d/
$ yum makecache fast #更新yum源缓存

(2)安装依赖:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

(3)安装docker ce(docker社区版):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo yum install docker-ce

2.在Ubuntu上安装Docker

使用APT安装:由于apt源使用HTTPS以确保软件下载过程中不被篡改。因此,我们首先需要添加使用HTTPS传输的软件包以及CA证书。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo apt-get update
$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

鉴于网络问题,使用国内源下载(如下使用中国科学技术大学的镜像源)。 (1)为了确认所下载软件包的合法性,需要添加软件源的GPG密钥。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

(2)向source.list中添加Docker软件源

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

以上命令会添加稳定版本的Docker CE APT镜像源,如果需要最新或者测试版本的Docker CE,请将stable改为edge或者test。从Docker 17.06开始,edge、test版本的APT镜像源也会包含稳定版本的Docker。

(3)安装Docker CE

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io

特别地,如果使用上述方式无法安装Docker,可以使用如下方式安装。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
## 这样安装的docker版本可能比较低
$ sudo apt install docker.io

3.启动docker

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 将Docker加入开启启动
$ sudo systemctl enable docker
# 启动Docker
$ sudo systemctl start docker

4.建立Docker用户组

默认情况下,docker命令会使用Unix Socket与Docker引擎通信,只有root用户和docker组的用户才可以访问Docker引擎的Unix Socket。出于安全考虑,一般不会直接使用root用户,所以需要先建立docker组,并将当前用户添加到docker组中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo groupadd docker
$ sudo usermod -aG docker $USER

退出当前终端并重新登录,测试docker是否安装成功。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 查看Docker版本
$ docker --version
Docker version 18.09.4, build d14af54266

5.测试Docker是否安装成功

注意: 在执行如下测试之前,一定要退出当前终端重新登录,否则会提示当前用户没有连接Docker引擎的Unix Socket权限,切记!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ docker run hello-world

在Ubuntu18.04 LTS桌面版上使用时,安装完毕Docker,并将当前用户添加到docker组之后需要重启机器才能使用Docker启动容器,否则会报权限错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.

三.配置镜像加速器

国内从Docker Hub拉取镜像有时会非常慢,此时可以配置镜像加速器。 如下以配置163镜像加速器为例说明.

Ubuntu 14.04/Debian 7 Wheezy

对于使用upstart的系统而言,编辑/etc/default/docker文件,在其中的DOCKER_OPTS中添加获得的加速器配置: DOCKER_OPTS="--registry-mirror=http://hub-mirror.c.163.com"

重新启动服务。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo service docker restart

Ubuntu 16.04+/Debian 8+/CentOS 7

对于使用systemd的系统,在/etc/docker/daemon.json中写入如下内容(如果文件不存在需要新建该文件)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
    "registry-mirrors": [
        "http://hub-mirror.c.163.com"
    ]
}

之后重新启动服务。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

【参考】 https://github.com/yeasy/docker_practice Docker从入门到实践 https://www.gitbook.com/book/yeasy/docker_practice/details Docker — 从入门到实践 http://www.docker.org.cn/book/docker/what-is-docker-16.html docker手册 https://www.w3cschool.cn/docker/ docker教程 http://www.runoob.com/docker/docker-tutorial.html docker教程 https://docs.docker.com/install/linux/docker-ce/ubuntu/ Docker官方手册 https://www.jianshu.com/p/84b6fe281b4d docker更换为国内镜像

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-04-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Docker 入门
  安装 Docker 环境当然要使用上海大学开源镜像站提供的 docker-ce 镜像源咯。
zhonger
2022/10/28
7750
Docker入门(四):安装使用
由于 apt 源使用 HTTPS 以确保软件下载过程中不被篡改。因此,我们首先需要添加使用HTTPS 传输的软件包以及 CA 证书。
传说之下的花儿
2023/10/02
8700
Docker入门(四):安装使用
常见软件镜像设置
debian 旧版本系统(2[hamm ]-7[wheezy])源都放在 debian-archive 中,
灰太狼学Java
2022/06/17
1.9K0
Docker入门-介绍和安装
Docker最初是dotCloud公司创建人Solomon Hykes在法国期间发起的一个公司内部项目,它是基于dotCloud公司多年云服务技术的一次革新,并于2013年3月以Apache2.0授权协议开源,主要项目代码在Github上进行维护。Docker项目后来加入了Linux基金会,并成立推动开放容器联盟(OCI)。
小码农薛尧
2019/08/21
7260
Docker入门-介绍和安装
docker 最新安装命令
安装完docker,最好改为国内镜像,http://hub-mirror.c.163.com是docker公司专门为国内用户准备的!
老高的技术博客
2022/12/28
6440
Docker安装
Docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,通过这种技术可以创建多个容器(最终服务运行或者项目运行就是在容器中的)。
李昂君
2021/12/24
3390
Docker安装
Ubuntu镜像Docker安装教程
Update the apt package index and install packages to allow apt to use a repository over HTTPS:
大王叫我来巡山、
2025/07/21
2000
Docker那些事之Ubuntu环境
docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。
公众号guangcity
2020/02/24
4800
Docker那些事之Ubuntu环境
Ubuntu 20.04 安装 Docker
在**/etc/docker/daemon.json**中写入如下内容(如果文件不存在请新建该文件):
全栈程序员站长
2022/09/13
4.2K0
Ubuntu 20.04 安装 Docker
Docker 以及 docker-compose 的部署
1. Docker部署 1.1 方式一: 下载软件源 wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo sed -i 's#download.docker.com#mirrors.ustc.edu.cn/docker-ce#g' /etc/yum.repos.d/docker-ce.repo 安装 yum install docker-ce -y
HaydenGuo
2019/12/13
9030
Docker 以及 docker-compose 的部署
Docker(一)——环境配置
官方提供的安装教程地址:https://docs.docker.com/install/linux/docker-ce/centos/#os-requirements 官方脚本https://get.docker.com/ 其中关于镜像的选择是阿里云和亚马逊云,中国地区推荐了使用阿里云镜像 最快捷的方式脚本一键安装,国内设置镜像为Aliyun。
羊羽shine
2019/05/28
1.5K0
Docker(47)- 一键安装 docker 的 shell 脚本
有多个自己的云服务器,都要安装 docker,所以就尝试将安装的步骤转换成 shell 脚本,回头可以一键执行~
小菠萝测试笔记
2021/11/02
1.7K1
Docker入门笔记总结
Docker 是一个容器化平台,允许您快速构建,测试和部署应用程序,作为便携式,自给自足的容器,几乎可以在任何地方运行。Docker 是容器技术的事实上的标准,它是 DevOps 工程师及其持续集成和交付管道的必备工具。
网络安全自修室
2020/08/31
9100
Docker入门笔记总结
docker 操作进阶
sudo docker exec -it merlingpu env LANG=C.UTF-8 /bin/bash
AI拉呱
2021/01/14
5200
vulfocus搭建
vulfocus是一个管理靶场的docker容器。做为一个学习网安,渗透的小白,不乏会碰到搭建练习靶场,以及一些漏洞环境来学习。比如dvwa、pikachu等等。搭建不仅费事费时,而且再次学习还要重新搭建或者搭建部分,简直是学习路上的绊脚石。 vulfocus管理着常用的靶场和漏洞,只需要动动手指点击鼠标,vulfocus就会自动从官网拉取环境,且依赖docker部署环境。当再次使用时,只需docker启动vulfocus,通过vulfocus启动即可,当然也可以使用docker启动,因为vulfocus也是安装的靶场或者漏洞环境也是docker容器。
cultureSun
2023/05/18
4.2K1
vulfocus搭建
Ubuntu国内镜像Docker安装详细教程
Update the apt package index and install packages to allow apt to use a repository over HTTPS:
繁华是客
2023/03/03
5.8K0
Docker简介与安装
Docker提供了一个可以运行你的应用程序的封装,或者说容器。它原本是dotCloud的一个内部项目,开源的时候吸引了大量的关注与讨论,后续导致dotCloud把公司名称改为了Docker Inc。Docker 最初是在 Ubuntu 12.04 上开发实现的;Red Hat 则从 RHEL 6.5 开始对 Docker 进行支持;Google 也在其 PaaS 产品中广泛应用 Docker。
踏歌行
2020/10/15
6860
Docker简介与安装
「  【Docker】设置docker加速器(如何使docker下载速度变快)  」
很无奈,本来这是一篇已经发布的文,因为我误删了数据库,导致我需要重写 蟹钳,刚配置安装好docker的时候,常常会因为pull速度慢而感觉到困扰,本文教你设置docker加速器,原理就是更换docker hub官方源为第三方源
青益
2023/01/03
5.8K0
docker创建进入删除容器资源限制
为什么使用容器 docker设计目标: 提供简单的应用打包工具 开发人员和运维人员职责逻辑分离 多环境保持一致性 轻量级 kubernetes设计目标: 集中管理所有容器 资源编排 资源调度 弹性伸缩 资源隔离 容器与虚拟机 [image-20200308101459743.png] 虚拟机比容器多了一层完整的os系统 docker寄居于底层系统之上,能够节省资源开销. [image-20200308103159625.png] docker的资源隔离和网络限制 1. namespace 实现了资源的隔
陈雷雷
2020/03/18
1.8K0
docker创建进入删除容器资源限制
Docker---(0)Docker 安装
----------------------------------------------------------------------------------------------------------
IT云清
2019/01/22
1.1K0
相关推荐
Docker 入门
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验