运行环境: VMware Workstation Pro 在虚拟机中安装centos7系统, 选择最小安装, 网络连接方式选择的桥接(与宿主机在同一IP段)
centos7一定要安装64位, docker目前不支持32位内核

##看准了, 是在centos7系统下, centos6填了很多坑, 最终还是选择了用centos7系统

## 准备工作
因为是最小安装, 默认没有wget, 安装wget

yum install wget

打开阿里云的开源镜像站
http://mirrors.aliyun.com/help/centos

备份更新源 文件

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 替换阿里云镜像源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 或者使用网易镜像源(推荐用这个, 最近阿里镜像源抽了, 经常无法访问)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo

运行yum makecache生成缓存
运行yum update更新系统, 这个过程会比较慢

## 开始安装docker

yum install docker-io

安装完成最重要的一步是启动docker服务, 好多教程上都没有这个步骤, 当初在这点费了好大劲

service docker start

如果当前账户不是root的话,所有的docker命令前都要加上sudo

查看本地docker镜像列表

docker images #如果报错的话, 查看docker服务是否成功启动

## 登录阿里云镜像仓库

- 首先得有个阿里云账号, 并且已经通过实名认证
- 进入这个地址https://cr.console.aliyun.com/或这个地址https://dev.aliyun.com/search.html
- 登录之后, 进入管理控制台找到docker镜像仓库->镜像列表->然后给docker设置一个登录密码
- 创建一个镜像仓库, namespace随便起个, 镜像名称命名为centos-jdk7-tomcat7
- 仓库类型私有, 代码源为本地仓库, 然后创建
- centos-jdk7-tomcat7镜像仓库创建完成之后, 进入管理界面, 有详细的操作指南

### 配置镜像加速器

- 设置镜像加速器, 在管理控制台 Docker镜像仓库->加速器 每个用户都会创建一个专属加速器
- 修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://cvv5tle1.mirror.aliyuncs.com"]# 这里的镜像源是我专属的, 其他人用可能起不到加速效果
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

### 在本地登录阿里云镜像仓库

docker login --username=yzzhouyalei@foxmail.com registry.cn-hangzhou.aliyuncs.com
用户名是阿里云账号全称, 密码是开通namespace时设置的密码(可以在阿里云控制台修改密码)

执行pull命令下载一个centos, 版本为latest的镜像

docker pull centos # 不指定版本的话, 默认下载latest版本, 或者执行docker search centos, 搜索一个centos镜像

下载完成后, 执行docker images 查看本地镜像

[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/centos latest 67591570dd29 weeks ago 191.8 MB

启动一个基于docker.io/centos的容器

docker run -it --name=test-centos docker.io/centos:latest /bin/bash
-it 表示交互模式, 启动成功后进入命令行
-d 表示守护模式, 容器在后台运行
--name 为容器命名
docker.io/centos:latest 格式为镜像名:版本
/bin/bash 进入bash命令行

命令执行结果

[root@localhost ~]# docker run -it --name=test-centos docker.io/centos:latest /bin/bash
[root@060e31db603c /]# 已经进入容器内部

因为目前的容器内部, 没有任何程序运行, 所以一旦执行exit, 退出容器时, 容器将结束运行

[root@060e31db603c /]# exit
exit
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
060e31db603c docker.io/centos:latest "/bin/bash" minutes ago Exited () seconds ago test-centos
[root@localhost ~]#

执行exit, 此时, 运行docker ps -a 查看容器, 发现状态为Exited, 运行中的状态是Up

docker ps 命令, 查看运行中的容器
docker ps -a命令, 查看全部的容器, 包括运行中和已停止运行的容器

删除状态为Exited, 已停止运行的容器

通过容器名称删除已经停止运行的容器(test-centos为docker run命令中给容器的命名)
docker rm test-centos
通过容器ID删除已经停止运行的容器
docker rm 060e 这两个命令效果一样, 060e是containerID的前4位

强制删除状态为Up, 正在运行中的容器

docker rm -f test-centos

到此步骤, centos7系统下docker环境搭建已经完成

如需帮助可向我发起QQ聊天发起QQ聊天

友情赞助

如果您喜欢此文,感觉对您工作有帮助,预期领导会给您涨工资,不妨小额赞助一下,让我有动力继续努力。

赞助方式:打开支付宝App,使用“扫一扫”付款,付款码见下图,别忘了付款留言哦!


或使用微信, 不用加好友就能付款

centos7系统下 docker 环境搭建的更多相关文章

  1. win7下docker环境搭建nginx+php-fpm+easyswoole+lavarel+mysql开发环境

    win7环境基础在上一篇win7下docker环境搭建nginx+php-fpm+easyswoole开发环境中已经详细叙述搭建完成 本篇文章将叙述如何在上述基础上搭建laravel开发环境,这个其实 ...

  2. php手动搭建wamp环境(一)--之 Windows系统下PHP环境搭建

    1.PHP环境搭建的前提是 Apache HTTP Server (Apache 服务器)已经安装部署成功,并可以正常访问到服务器的主页面.Apache HTTP Server 的安装部署已经在上一篇 ...

  3. node在Fedora 22系统下开发环境搭建

    事实上,环境搭建在linux系统还是比較简单的,下载已经编译好的包,配置一下环境变量. 或者下载源代码,自己编译. 这里记录一下,主要是node版本号变化节奏很块的情况下.怎样配置一次环境变量就不要再 ...

  4. windows系统下jenkins环境搭建与基本使用

    一. windows 系统下搭建jenkins环境 1.1 jenkins环境搭建和构建job流程图 1.2 安装jdk JDK下载地址:  http://www.oracle.com/technet ...

  5. PHP环境搭建-Windows系统下PHP环境搭建

    1.PHP环境搭建的前提是 Apache HTTP Server (Apache 服务器)已经安装部署成功,并可以正常访问到服务器的主页面.Apache HTTP Server 的安装部署已经在上一篇 ...

  6. Centos6.5下docker 环境搭建

    一.运行docker Linux内核版本需要在3.8以上,针对centos6.5 内核为2.6的系统需要先升级内核.不然会特别卡,退出容器. 在yum的ELRepo源中,有mainline(3.13. ...

  7. PHP + Nginx 在 Linux(centos7)系统下的环境搭建

    ( 选用的操作系统为 centos7 ) 01,安装 nginx => 请移步 https://www.cnblogs.com/lovling/p/9197572.html 02,下载 php  ...

  8. PHP + Apache 在 Linux(centos7)系统下的环境搭建,基于 yum

    (本文采用的是 Centos7 的操作系统,简单起见,以下全部采用 yum 安装,有这么好用的东西为什么要自己去一个一个编译呢) 1, 安装 Apache  => yum -y install ...

  9. CentOS7.5环境下Docker环境搭建

    1. 安装wget工具: yum install wget -y 2. 使用wget工具从docker官网下载yum源: wget -P /etc/yum.repos.d/ https://downl ...

随机推荐

  1. python selenium 最简单示例

    使用 pip 安装  selenium 下载 chromedriver,添加在PATH中 # -*- coding: utf-8 -*- from selenium import webdriver ...

  2. 移动文件(git mv)

    使用git mv命令将mian.c移动为main2.c $ git mv main.c main2.c D:\Git\test (master -> origin) $ git status O ...

  3. vue项目的常用配置代码

    { // 针对vue的格式化配置----依赖eslint.prettier.vetur等插件 // 强制单引号 "prettier.singleQuote": true, &quo ...

  4. Ubuntu 划词翻译

    在 Windows 下用 QTranslate 可以划词翻译,调用谷歌或百度翻译引擎,不需要本地词典. 在 Ubuntu 下可以自己写脚本实现一个简陋的版本. 步骤如下: 安装 xsel,sudo a ...

  5. web前端效率提升之浏览器与本地文件的映射-遁地龙卷风

    1.chrome浏览器,机制是拦截url, 1.在浏览器Element中调节的css样式可以直接同步到本地文件,反之亦然,浏览器会重新加载css,省去刷新 2.在source面板下对js的编辑可以同步 ...

  6. JAVA使用HttpClient时报错:Algorithm constraints check failed on signature algorithm: MD5withRSA

    今天使用httpClient.executeMethod时抛出异常:java.security.cert.CertPathValidatorException: Algorithm constrain ...

  7. redis 分布式锁流程图

  8. WPF入门之一APP.XAML

    WPF运行之后,App.xaml是应用的声明起始点. 一.指定入口 通过指定Application 的StartupUri属性,指示了启动应用的时候,加载哪个窗口或网页. 最常见的就是将默认的Main ...

  9. margin合并和浮动

    1.父子元素margin塌陷问题子元素设置margin-top作用于父元素时, 会产生margin合并问题. 解决方法是: 给父元素的::before伪元素设置为display:table属性, 其中 ...

  10. asp.net core 的 razor pages 如何使用ajax调用后台方法

    Razor 是一种允许您向网页中嵌入基于服务器的代码(Visual Basic 和 C#)的标记语法. 当网页被写入浏览器时,基于服务器的代码能够创建动态内容. 在网页加载时,服务器在向浏览器返回页面 ...