首页 > 其他分享 >Docker 快速学习手册及相关笔记 附带一些问题解决方案

Docker 快速学习手册及相关笔记 附带一些问题解决方案

时间:2023-02-23 00:22:06浏览次数:60  
标签:附带 com sudo 手册 -- https Docker zsh docker

参考与前言

  1. Docker 官方教程 【英文】:https://docs.docker.com/get-started/
  2. Windows Docker 安装 | 菜鸟教程 (runoob.com)
  3. Docker 教程 | 菜鸟教程

Docker 并非是一个通用的容器工具,它依赖于已存在并运行的 Linux 内核环境。

Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的 Linux 主机。

因此,Docker 必须部署在 Linux 内核的系统上。如果其他系统想部署 Docker 就必须安装一个虚拟 Linux 环境。

如需要在ubuntu下使用 像绝哥说的 用多了就是几条指令 非常快速的... 这个为走捷径教程,建议通过目录进行所需的观看

常用命令

  1. 查看已有镜像 image

    docker images
    
  2. 删除对应镜像id的镜像

    docker rmi image_id
    
  3. 查看已有容器 containers

    docker ps -a
    
  4. 删除对应容器id的容器

    docker rm container_id
    
  5. 删除所有无名

    sudo docker rmi $(sudo docker images -q --filter "dangling=true")
    

如果想一次過將所有 container 停止及刪除, 執行以下指令:

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

0. 安装

docker

可以畅通网络的情况下 [Docker官方源]:

Install Docker Engine on Ubuntu

  • docker engine

    sudo apt-get update
    sudo apt-get install \
        ca-certificates \
        curl \
        gnupg \
        lsb-release
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io
    

国内镜像一键安装:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

nvidia-docker

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
   && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
   && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update
sudo apt-get install -y nvidia-docker2
sudo systemctl restart docker
sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi

1. 基础介绍

Docker 包括三个基本概念:

  • 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
  • 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

容器与镜像的关系类似于面向对象编程中的对象与类。

镜像 → 类;容器 → 对象

运行与参数

docker run -it ubuntu /bin/bash

docker run -it -e DISPLAY=$DISPLAY --net=host --gpus all \
--name kin_carla2 carlasim/carla:0.9.10.1 /bin/bash

docker run -it --gpus '"device=1,2"' \
-v /data_shared/Docker/jcheng/workspace:/workspace \
-p 8010:6006 \
--name cj_01 cj/torch:1.10.0-cuda11.3-cudnn8-runtime /bin/zsh

参数说明:

  • i: 交互式操作。

  • t: 终端。

  • ubuntu: ubuntu 镜像名称

  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash,比如最后一条使用的是bin/zsh 也就是zsh Shell

  • --gpus all,也可以指定此容器可使用的gpu数量和设备,如果是数量的话 直接后接数字即可,如果是设备的话 如上 指标设备id,相关官方链接

  • --name kin_carla2 指明这个容器的名字,没有的话就是随机命名,有名字的话后面 docker start 可以直接接名字 省事

  • -p 的意思是把contrainer的端口映射到host上,例如 -p 8010:6006 的意思是把容器中6006端口映射到host的8010端口上

相关文章

  • docker 本地linux环境调试 .net 代码 —— debugging dockerized .NET core applicat
    原文:HowtoDebugDockerized.NETCoreAppsinVSCode(freecodecamp.org) vscoderundockercommand:dockerimagebuild--pull--file"C:\[path]/[projectN......
  • docker 部署oracle
    一、获取oracledocker-imagehttps://github.com/oracle/docker-imagesgitclonehttps://github.com/oracle/docker-images.git将oracle安装包放到对应的目录下面[ro......
  • Docker入门学习
    一、安装Docker(Linux)#1、yum包更新到最新yumupdate#2、安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的yuminstall......
  • docker run指定gpu运行
    要在dockerrun命令中指定GPU,您需要使用--gpus标志。例如,要在容器中使用所有可用的GPU,您可以运行以下命令:dockerrun--gpusallyour_image您还可以使用以下选......
  • centos7.6 k8s 1.23.2 docker version 23.0.1 init
      dockerpullregistry.aliyuncs.com/google_containers/kube-apiserver:v1.23.2kubeadminit--kubernetes-version=v1.23.2--image-repositoryregistry.aliyuncs......
  • Docker相关
    一、安装在Ubuntu22.04LTS中安装:1、更新Ubuntu(用的是清华源)$sudoaptupdate$sudoaptupgrade$sudoaptfull-upgrade2.添加Docker库首先,安装必要的证书......
  • docker安装nacos集群
    1.临时启动dockerrun--namenacos-d-p8848:8848-p9848:9848-p9849:9849nacos/nacos-server:v2.1.12.创建配置文凭挂载目录mkdir-p/opt/docker/nacos/con......
  • Docker全方位攻略与自动化运维
    介绍DockerRegistry(Docker注册中心)是一个管理Docker容器镜像存储和交付的应用程序。注册中心集中容器镜像并减少开发人员的构建时间。Docker镜像通过虚拟化保证相同的......
  • centos安装docker
    0.安装DockerDocker分为CE和EE两大版本。CE即社区版(免费,支持周期7个月),EE即企业版,强调安全,付费使用,支持周期24个月。DockerCE分为stabletest和nightly......
  • 用户手册:接入设备之接入Hikvision摄像头
    获取模板在​​examples/rtspDeviceShifu​​中查看模板文件。修改配置在​​examples/rtspDeviceShifu/camera-deployment/deviceshifu-camera-deployment.yaml​​中:spec......