在Docker中使用centos的折腾记录

docker-logo

  1. 使用对象

    1.1 版本信息

    名称版本备注
    docker desktop community2.2.0.3 stableCell
    centos7.6.1810
    Windows 10 专业版190318362.657

    1.2 特别说明

    1.2.1 2.2.0.3 stable 新版在容器中增加了gui管理界面,可以直接对容器进行启动、重启、删除,调用命令行窗口等操作 如下图

    在这里插入图片描述

    docker推荐使用最新版本,Docker Desktop for Windows

     Docker for Windows Installer LightweightInstaller 18.6.1.19507 遇到了文件夹不能共享的问题,升级到2.2.0.3 stable后就没有这些问题了
    

    docker使用手册

  2. 基础配置-docker

    2.1 如果有自己的dockerID,也可以登录到docker,然后根据提示输入username和密码就可以了(密码不显示),如果有自己的私有镜像仓库,登录后就可以拉取自己的镜像了。目前发现普通用户只能创建一个私有仓库

    docker login docker.io

    2.2 由于docker默认的镜像地址,拉取速度较慢,所以建议更换国内的地址 :DaoCloud 加速器

     http://f1361db2.m.daocloud.io
    

    2.3 国内镜像配置位置

    在这里插入图片描述

  3. 基础配置-centos

    3.1 确定拉取的centos版本:centos 7.6.1810 (Docker Official Images)

    docker pull centos:7.6.1810

    3.2 运行镜像

    docker run -itd --privileged --name centos centos:7.6.1810 /usr/sbin/init

    3.3 查看系统版本

    # cat /etc/redhat-release

     CentOS Linux release 7.6.1810 (Core)
    
  4. 初始化centos

    由于拉取的centos缺少相关常用命令,我们需要进行一次初始化

    4.1 将Centos的yum源更换为国内的阿里云源

    4.2 bash: service: command not found

    yum -y install initscripts && yum clean all

    4.3 bash: ip: command not found

    yum -y install iproute iproute-doc

    4.4 bash: wget: command not found

    yum -y install wget

    4.5 bash: ifconfig: command not found

    net-tools

    rpm -ivh net-tools-2.0-0.25.20131004git.el7.x86_64.rpm

    4.6 bash: ll command not found

    vi ~/.bashrc 编辑文件 加入 alias ll=’ ls -l’ 生效: source ~/.bashrc


相关资料

  1. Docker镜像推送(push)到Docker Hub
  2. docker 容器使用 systemctl 命令是报错
  3. Linux 找不到 ifconfig、wget 指令?/如何确定ifconfig所属哪个插件?
  4. windows下安装的docker挂载window目录到docker容器
  5. Failed to get D-Bus connection: Operation not permitted

    之所以报这个d-bus的错误就是因为在容器中,CentOS的镜像是默认不启动systemd的,而且启动需要privileged权限或者–cap-add=SYS_ADMIN权限。 Docker依赖Linux内核的功能:容器和宿主机建立相互隔离的环境(应用程序在里面运行)。而官方的容器很精简,容器之所以和宿主机共享同一内核,却在不同的运行时环境中执行,这归功于控制组(cgroup)和命名空间,它们定义了容器可以使用哪些资源,与此同时,容器本身只能看到某些进程和网络功能。所以我们可以看到前面第一个命令,在privileged的同时还进行了cgroup目录的挂载,这就是定义了该容器获取了系统的完整内核。

网络

  1. Docker容器与宿主机同网段互相通信
  2. Docker for Windows問題 - Container不能與Docker Host所處的其他電腦溝通
  3. Docker 网络之进阶篇
  4. “深入浅出”来解读Docker网络核心原理
  5. Docker1 架构原理及简单使用
  6. From inside of a Docker container, how do I connect to the localhost of the machine?
  7. How to configure a static IP address on CentOS 7 / RHEL 7
  8. /etc/sysconfig/network: No such file or directory
  9. 計算機cmd命令之route,查看路由表,或配置一個更有效的路由
  10. Docker的网络模式详解

参考

  1. CentOS 解決 Failed to set locale, defaulting to C
  2. Official CentOS systemd docker containerOfficial CentOS systemd docker container

    the container was created as a base container for systemd based services

  3. Linux下刷新DNS缓存(Ubuntu/CentOS)
  4. 常见Linux发行版本有哪些?
  5. docker创建私有仓库
  6. OSI七层模型详解
  7. CentOS的软件包的管理之rpm和yum

博客

  1. 徐靖峰
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值