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基础扫盲

扫盲

安装

操作系统:ubuntu20

  • 卸载旧版本:sudo apt-get remove docker docker-engine docker.io containerd runc

  • 更新apt和软件:sudo apt-get update&&sudo apt-get upgrade

  • 安装依赖:sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common

  • 添加GPG密钥,官方的:curl -fsSL https://download.docker.com/linux/ubuntu/gpg| sudo apt-key add -或者阿里云的:curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

  • 添加软件源(amd64架构)

    sudo add-apt-repository \
       "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
       $(lsb_release -cs) \
       stable"
    
  • 安装docker: sudo apt install docker-ce

  • 尝试建立第一个容器:sudo docker run hello-world

  • 免root :sudo usermod -aG docker [你的用户名]

  • 镜像加速:用阿里云的https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

    按操作文档执行即可

运行第一个docker镜像:

docker run hello-world

  • docker : 当前用户未加入docker组时需要在前面加sudo,使用命令sudo usermod -aG docker [你的用户名]即可将免sudo运行。
  • run 运行docker镜像,若在本地不存在则会从云端仓库里pull下来运行
  • hello-world 镜像名

正常运行则会输出

image-20211121220709680

运行交互式容器

docker run -i -t ubuntu:15.10 /bin/bash

  • -t :在新容器内指定一个伪终端或终端
  • -i : 允许你对容器内的标准输入 (STDIN) 进行交互
  • /bin/bash :在启动的容器里执行的命令

image-20211121221338278

运行成功后进入容器内的终端,尝试执行命令

image-20211121221455135

利用exit即可退出容器终端

后台启动容器

尝试输入

docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"

docker run -itd --name ubuntu-test ubuntu /bin/bash

image-20211121221708598

  • -d 后台启动容器
  • –name 指定容器名

这一长串字符串是容器ID,对于每个容器是唯一的

查看容器列表

docker ps

类似于shell的ps命令,显示当前运行的容器

  • -a :显示所有容器

image-20211121222026822

输出详情介绍:

CONTAINER ID: 容器 ID。

IMAGE: 使用的镜像。

COMMAND: 启动容器时运行的命令。

CREATED: 容器的创建时间。

STATUS: 容器状态。

状态有7种:

  • created(已创建)
  • restarting(重启中)
  • running 或 Up(运行中)
  • removing(迁移中)
  • paused(暂停)
  • exited(停止)
  • dead(死亡)

PORTS: 容器的端口信息和使用的连接类型(tcp\udp)。

NAMES: 自动分配的容器名称。

查看容器的标准输出

之前后台运行了一个容器,id是f20f2b74cd3e

执行docker logs [容器ID]/[容器名称]

可以看到该容器在标准输出中输出了什么

image-20211121222442709

可以看到该容器输出了一堆hello

停止容器

docker stop [容器ID]/[容器名]

image-20211121224022183

容器使用

docker -h

查看所有docker命令帮助,过多

也可单独查看例如docker run --help的命令

启动已经停止的容器

docker start [容器ID]

image-20211121224640061

image-20211121224611131

重启容器

docker restart [容器ID]

进入容器

在使用-d参数开启容器时默认不进入容器,可通过

docker attach [容器ID]

使用该命令如果从这个容器中退出会导致容器停止

例子:docker attach 3bdcab79f93d

image-20211121225316881

docker exec [操作参数] [容器ID][要执行的命令]

例子:docker exec -it 3bdcab79f93d /bin/bash

image-20211121225656785

导入导出容器

docker export [ID] > xxx.tar

导出容器快照到本地文件xxx.tar

image-20211121225917663

从文件中导入容器快照

cat ubuntu.tar | docker import - inspiring_williamson

删除容器

docker rm -f [容器ID]

image-20211121231326173

清理所有终止状态的容器

docker container prune

image-20211121231355656

尝试运行一个web应用

docker pull training/webapp

docker run -d -P training/webapp python app.py

  • **-d:**让容器在后台运行。
  • **-P:**将容器内部使用的网络端口随机映射到我们使用的主机上。

image-20211121232135164

image-20211121232228857

主机的49153端口映射到了容器的5000端口

尝试访问 主机ip:49153

image-20211121232412020

可以通过修改-p的参数设置端口映射

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

查看端口映射

docker port [容器ID]

image-20211121232721721

查看容器的进程

docker top [容器名]/[容器ID]

image-20211121232932670

检查容器信息

docker inspect [容器ID]

image-20211121233114478

镜像使用

待续

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-11-22 12:45:44  更:2021-11-22 12:46:26 
 
开发: 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/16 0:53:21-

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