首页 > 其他分享 >1.Docker基础及自动安装

1.Docker基础及自动安装

时间:2023-07-24 13:32:26浏览次数:41  
标签:sudo ce 自动 apt install Docker 安装 docker

docker的介绍和基础操作

docker 单机容器
docker compose 单机多个容器
k8s  多机多个容器
container即容器,集装箱
docker就是搬运集装的码头工人,管理容器的管理工具
Docker的组成:
Docker 主机(Host): 一个物理机或虚拟机,用于运行Docker服务进程和容器,也称为宿主机, node节点
Docker 服务端(Server): Docker守护进程,运行docker容器 
Docker 客户端(Client): 客户端使用 docker 命令或其他工具调用docker API 
Docker 镜像(Images): 镜像可以理解为创建实例使用的模板,本质上就是一些程序文件的集合 
Docker 仓库(Registry): 保存镜像的仓库,官方仓库: https://hub.docker.com/,可以搭建私有仓库harbor 
Docker 容器(Container): 容器是从镜像生成对外提供服务的一个或一组服务,其本质就是将镜像中 的程序启动后生成的进程


容器是基于什么核心技术来实现的:Namespace和control groups

docker安装方式

1.二进制安装,可使用脚本
2.包安装:apt install docker.io

安装docker后会增加一个新的网卡docker0
docker自动生成IPtables规则

docker安装脚本:Ubuntu

#!/bin/bash
#
#********************************************************************
#Author:            limanman
#QQ:                461624736
#Date:              2023-3-14
#FileName:          install_docker.sh
#Description:       The test script
#********************************************************************
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
#   docker-ce | 17.03.1~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
#   docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://si7y70hh.mirror.aliyuncs.com"]
}
EOF
sudo systemctl restart docker

docker安装脚本:centos

#!/bin/bash
#
#********************************************************************
#Author:            limanman
#QQ:                461624736
#Date:              2023-3-14
#FileName:          install_docker.sh
#Description:       The test script
#********************************************************************
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start

# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://si7y70hh.mirror.aliyuncs.com"]
}
EOF
sudo systemctl restart docker

docker常用命令

查看所有容器:
[root@ubuntu2004 ~]#docker ps -a
查看本地镜像及大小:
[root@ubuntu2004 ~]#docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
busybox      latest    beae173ccac6   9 months ago    1.24MB
nginx        latest    605c77e624dd   9 months ago    141MB
alpine       latest    c059bfaa849c   10 months ago   5.59MB
ubuntu       latest    ba6acccedd29   12 months ago   72.8MB
查看镜像id
[root@ubuntu2004 ~]#docker images -q     
beae173ccac6
605c77e624dd
查看镜像的详细信息:
podman image inspect alpine	   (image可以省略)

拉取镜像:
[root@ubuntu2004 ~]#docker pull ubuntu

拉取应用:
[root@ubuntu2004 ~]#docker run -d --name nginx nginx
拉取应用后会生成一个新的容器叫nginx:
[root@ubuntu2004 ~]#docker ps -a
CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS     NAMES
83090c35f1dd   nginx     "/docker-entrypoint.…"   3 minutes ago   Up 3 minutes   80/tcp    nginx
同时生成一个新的网卡:
 veth5cba4dc@if10: 桥接到docker网卡docker0
 
导出镜像:
docker save 镜像名或id -o 生成的文件名.tar 
导入镜像:
docker load -i 镜像文件名     会自动解压
删除镜像标签:
docker rmi 标签
强制删除容器:(如果有容器正在使用,那么是一种虚拟删除,空间并不释放)
docker rmi -f id
删除没有名字的none镜像:默认清dangling的,加-a清理所有不在用的镜像,定期清理
docker image prune

存储引擎

aufs/overlay/overlay2/...
docker使用overlay2
允许多个设备挂载到同一个地方

Debian(ubuntu)系统建议安装的基础包

apt update                          #安装软件前需要先更新索引
apt install procps                  #提供top, ps, free等命令
apt install psmisc                  #提供pstree, killall等命令
apt install iputils-ping            #提供ping命令
apt install net-tools               #提供netstat网络工具等
apt install iproute2                #提供ip,ss网络工具等

容器规范

运行时规范runtime spec和格式规范image format spec
runtime是真正运行容器的地方

runtime类型:
Lxc
Libcontainer
runc
rkt

容器编排工具

docker compose:单机的容器编排工具
docker swarm:容器编排引擎  多机
mesos+marathon:多机
kubernetes:多机编排引擎

标签:sudo,ce,自动,apt,install,Docker,安装,docker
From: https://blog.51cto.com/lmm01/6834284

相关文章

  • 在android虚拟机中安装app
    在Android虚拟机中安装App在Android开发中,我们经常需要在虚拟机中安装App以进行调试和测试。本文将介绍如何在Android虚拟机中安装App,并提供代码示例。创建虚拟机首先,我们需要创建一个Android虚拟机。可以使用AndroidStudio提供的虚拟设备管理器来创建和管理虚拟机。以下是创建......
  • Creating network "docker_default" with the default driver ERROR: Failed to S
    创建网络"docker_default"withthedefaultdriverERROR:FailedtoS在使用Docker容器时,有时会遇到以下错误信息:Creatingnetwork"docker_default"withthedefaultdriverERROR:FailedtoS。这个错误通常表示Docker无法创建名为"docker_default"的网络。本文将解释此错......
  • UE4构建基础和实践:五、CI/CD平台自动化打包
    序言使用CI/CD平台构建(这里使用蓝盾平台)主要是通过平台脚本运行上一章的py脚本并传递参数(即把py中的参数开放给配置平台脚本配置)。Build.py重构我们需要在py脚本里面解析和设置参数importsysimportosimportgetoptdefmain(argv):ProjectName=""......
  • 设置pip的安装源
    windows一般有两个位置C:\Users\<YourUsername>\.pip\pip.iniC:\Users\<YourUsername>\AppData\Roaming\pip\pip.inilinux/etc/pip.conf~/.pip/pip.conf~/.pip.conf内容[global]timeout=6000index-url=http://pypi.douban.com:80/simple/trust......
  • jadx安装与配置,hook框架frida
    jadx1.下载jadx反编译工具,安装(解压即用)#下载地址:https://github.com/skylot/jadx/releases2.打开jadx反编译工具:3.抓包与代码定位3.1抓包#1.安装apk#2.打开chaarles,打开app,定位到登录请求3.2.反编译定位代码的位置#抓包#想去反编译代码中的位置......
  • finalShell的安装和使用
    finalshell的下载链接:https://pan.baidu.com/s/17D7oZ3xo24lnmFJ_amXdBA提取码:86ym1、finalshell的安装安装步骤很简单,下一步,下一步,安装完即可,存放路径,建议不要存放在c盘2、操作步骤2.1打开工具 2.2 修改快捷键 获取结束之后,点击确认使用以上方式,将系统原来默认......
  • linux安装源码包指定安装目录【转载】
    本文来自博客园,作者:阿弱,转载请注明原文链接:https://www.cnblogs.com/aruo/p/15771915.html当下载完一个源码包并且解压后文件夹下会有一个重要的文件configureconfigure文件是一个可执行的脚本文件,它将检查目标系统的配置和可用功能,比如一些检查依赖或者启用禁用一些模块,它有......
  • 如何在Windows中安装WinCC V8.0
    通常SIMATICWinCC的产品包装中包含三张光盘。以WinCCV8.0为例,分别是WinCCV8.0、SIMATICNETV18和additionalContent。其中,WinCCV8.0是基本的安装包,SIMATICNETV18提供了通讯所必须的驱动程序,AdditionalContent中提供了SQLSERVER的管理工具。安装时需要注......
  • centos7 安装 minio RELEASE.2021-06-17
    1、下载执行包wgethttps://dl.min.io/server/minio/release/linux-amd64/archive/minio.RELEASE.2021-06-17T00-10-46Z2、创建数据、日志文件夹mkdir-p/data/project/minio/data/mkdir-p/data/project/minio/log/touch/data/project/minio/log/minio.log3、授......
  • 在Centos7安装Mongodb
    背景为了创建一个关于nodejs项目,选取mongodb作为数据库使用。WindowsC盘还剩1GB,于是决定装到Centos7服务器上。安装下载安装包:https://www.mongodb.com/try/download/community-kubernetes-operator拖拽安装包:解压缩:tar-zxvfmongodb-linux-x86_64-rhel70-6.0.8.tgz......