IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> docker入门--安装和部署 -> 正文阅读

[系统运维]docker入门--安装和部署

? ? ? docker这个词听了很久,由于太懒,一直没有去了解。最近试着搞了一下,写一篇笔记,记录一下,大佬请绕行。(此处主要是根据菜鸟教程进行学习,其中实践出现问题之处,自己做了一些解决方式的记录。)

一、Centos安装docker

? 1. 使用命令安装docker
? ?

# curl -fsSL https://get.docker.com | bash -s docker --mirror aliyun
(此处使用的是阿里的docker下载地址)

? 2. 安装 Docker Engine-Community

# sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
# sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(此处是设置阿里仓库)
sudo yum install docker-ce docker-ce-cli containerd.io
docker -v
(查看一下版本,如果出现一行版本号则安装成功了)

? 3. 启动docker服务
? ? 当信誓旦旦开始执行#sudo systemctl start docker的时候,可能就抛出一个报错:System has not been booted with systemd as init system (PID 1). Can't operate. Failed to connect to bus: Host is down(操作时只遇到这一种错误)

  • 解决方式:
    ? ? 3.1、首先是需要检查这个问题是docker导致的还是systemctl导致的。
    ? ?用systemctl执行其他参数试一下,譬如systemctl status firewalld、systemctl start mysql、systemctl stop mysql、systemctl --version等等
    ? ? 3.2、如果是systemctl命令导致的,那么可能是当前操作系统不支持该命令,也可能其他原因。
    ? ? 进行尝试:
    ? ? (1)使用#sudo service start docker(或者可以百度一下自己的操作系统是否支持systemctl,以及当前系统需要用什么来进行操作服务)
    ? ? (2)在上面尝试无果后,发现docker -v以及systemctl --version都是可以执行的。反复百度后,最终…尝试了专治各种疑难杂症的“重启大法”。然后就ok了(ˉ▽ˉ)…
    ? ? (3)目前还未遇到其他问题,如果docker有问题,则卸载(卸载docker# yum remove docker-ce;删除其他镜像等文件:# rm -rf /var/lib/docker),重装再试一下。
    ? 4. 第一个hello world
    ? ? 开始执行#docker run hello-world
    ? ? 4.1、首先报错:unable to find image 'hello-world:lastest' locally,如图:在这里插入图片描述
    ? ? 原因:错误很明确找不到这个镜像,那就是地址不对。需要配置国内的镜像,此处配置阿里的镜像地址
    ? ? 解决方法:
    /etc/docker/daemon.json(默认是没有这个配置文件的,需要手动新建;默认docker路径是在这里,如果没有,则找一下路径,使用which 、find等命令)
    新建之后,在里面写入:
{ 
"registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"] 
}

? ? 保存文件,并且执行 systemctl restart docker(重启一下docker)。并且使用 systemctl status docker 查看目前docker运行的状态 ,看是否处于启动状态。如图:
在这里插入图片描述
? ? 4.2、继续执行docker run hello-world,报错(docker:Error response from daemon: cannot start a stopped process: unknow):

在这里插入图片描述
? ? 原因:缺少插件
? ? 安装依赖:yum install libseccomp-devel
? ? 安装完成之后,继续执行 docker run hello-world,此时成功,如图:

在这里插入图片描述

二、docker运行一个web

? ? 1、可以先参考菜鸟教程的docker hello world、docker镜像使用敲一些命令,熟悉一下
? ? 2、在最后docker运行web项目的时候,此处的映射端口是用的随机映射端口,在教程后面有进行说明操作。不过在此处随机映射的端口,服务器上就需要查看防火墙是否对该端口放行,如果使用阿里、腾讯等服务器就需要根据这个端口设置安全组等操作。所以此处,可以使用指定端口号的命令

docker run -d -p 80:5000 training/webapp python app.py

解释:
将docker内部的5000端口映射到外部80端口上
-P :是容器内部端口随机映射到主机的高端口。
-p : 是容器内部端口绑定到指定的主机端口。

三、docker的一些理解

1、docker类似于一个vmware虚拟机,在它里面可以安装各种镜像(操作系统),而与vm不同的是,docker有更加便捷的命令,以及创建容器的时候可以公用本地的镜像,操作更加灵活;
2、镜像仓库类似于java之中的maven,或者node之中的npm,是一个中央仓库
3、docker可以随意拉取镜像,也可以自己制作镜像(导入和导出),像打包一个jar、或者node包那样,能够是系统灵活的随意部署。
深入的一些知识还有待继续学习,一个比较不错的链接(该链接之中还引入了许多大佬写的k8s相关的东西): Docker1 架构原理及简单使用

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章           查看所有文章
加:2021-07-30 22:48:38  更:2021-07-30 22:49:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 0:45:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码