Docker hub:
usr:yuyixiong
pw: yuyixiong
email: 900925.com
hub 查看 :https://www.runoob.com/docker/docker-repository.html
1:docker login
2: docker search
3: docker pull image_name:tag —> docker pull [OPTIONS] NAME[:TAG|@DIGEST]

Docker:
容器管理命令:
docker container --help
eg: top, ls, rename, rm ,etc。。。。

后台运行
在大部分的场景下,我们希望 docker 的服务是在后台运行的,我们可以过 -d 指定容器的运行模式。
$ docker run -itd --name ubuntu-test(name) ubuntu(image) /bin/bash停止docker
$ docker stop <容器 ID>重启docker
$ docker restart <容器 ID>进入容器:
docker exec eg:docker exec -it mynginx(容器ID) /bin/sh
docker attach 容器id, 退出容器终端, 会导致容器停止(不推荐)删除容器:
docker rm -f 1e560fca3906下载/拉取镜像:
docker pull ubuntu(image name):13.10(version)查找镜像:
docker search 镜像名称查看镜像:
docker images 删除镜像
docker rmi 镜像名称创建镜像:当我们从 docker 镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。1、从已经创建的容器中更新镜像,并且提交这个镜像2、使用 Dockerfile 指令来创建一个新的镜像a:创建Dockerfile b:docker build -t runoob/centos:6.7(image name) .(dockerfile dir)参数说明:-t :指定要创建的目标镜像名. :Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径c: docker run -t -i runoob/centos:6.7  /bin/bash   使用新的镜像来创建容器
设置镜像标签:docker tag 860c279d2fec(tag name) runoob/centos:dev(new tag)docker tag 镜像ID,这里是 860c279d2fec ,用户名称、镜像源名(repository name)和新的标签名(tag)。查看docker实例:
docker ps
docker ps -a --no-trunc 可以查看完整的COMMANDexport 和 import 导出的是一个容器的快照, 不是镜像本身, 也就是说没有 layer。
你的 dockerfile 里的 workdir, entrypoint 之类的所有东西都会丢失,commit 过的话也会丢失。快照文件将丢弃所有的历史记录和元数据信息(即仅保存容器当时的快照状态),而镜像存储文件将保存完整记录,体积也更大。docker save 保存的是镜像(image),docker export 保存的是容器(container);docker load 用来载入镜像包,docker import 用来载入容器包,但两者都会恢复为镜像;docker load 不能对载入的镜像重命名,而 docker import 可以为镜像指定新名称。问题:docker报错:Cannot connect to the Docker daemon. Is the docker daemon running on this host?查看docker 服务是否启动:systemctl status docker.service 然后restar一下下载镜像:
docker pull ubuntu
docker pull ubuntu:18.04
docker pull ubuntu@sha256:82becede498899ec668628e7cb0ad87b6e1c371cb8a1e597d83a47fac21d6af3docker pull 下来的镜像文件存放的位置: /var/lib/docker/containers/

Docket Compose:
Compose 使用的三个步骤:

 使用 Dockerfile 定义应用程序的环境。使用 docker-compose.yml 定义构成应用程序的服务,这样它们可以在隔离环境中一起运行。最后,执行 docker-compose up 命令来启动并运行整个应用程序。docker-compose up -d  后台执行。

docker commit :从容器创建一个新的镜像
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTIONS说明:
-a :提交的镜像作者;
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停。
例1
docker commit -a “runoob.com” -m “my apache” a404c6c174a2 mymysql:v1
例2

     docker commit -m  ""   -a  ""   [CONTAINER ID]  [给新的镜像命名]docker commit -m  ""   -a  "" aa myelasticsearch:1.0

adc7d969aa15 registry.sensetime.com/viperlite/viper-lite:v2.3.0-dd32e2e-nolic-arm64-cuda10 “bash -c './bin/vide…” 22 hours ago Up 4 hours 0.0.0.0:8132->8132/tcp vps-worker-face

be14290e6cdcfec0f42d89a908f69d3ab7fb3231a14ab579799de9e0211b8b34 mysql/mysql-server:8.0-aarch64 “/entrypoint.sh --default-authentication-plugin=mysql_native_password”

mysqld --default-authentication-plugin=mysql_native_password --user=mysql

/run/mysqld/
/usr/sbin/mysqld

/lib/libssl.so.1.1
find: ‘/proc/1/task/5593/fdinfo/368’: No such file or directory
/usr/lib/aarch64-linux-gnu/libssl.so.1.1

Docker 网络:
sensetime@sensetime-desktop:/$ docker network ls
NETWORK ID NAME DRIVER SCOPE
5a25ffa22446 bridge bridge local
f47a015ec643 compose_default bridge local
0afd801763ec host host local
efda02e01096 none null local
0c4b4c164320 shisy_default bridge local
db37d9ee5bf7 viper-lite bridge local

 查看某个网络的详细信息:docker network inspect viper-lite创建网络:docker network create -d bridge viper-litesensetime@sensetime-desktop:/$ ip link show docker0  docker中默认网络的bridgedocker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default link/ether 02:42:e3:77:cf:b4 brd ff:ff:ff:ff:ff:ffdocker启动时, 可以通过--network来指定采用那个网络

Docker 卷与数据持久化:docker卷数据在主机的/var/lib/docker/volume目录下,持久化, 卷的数据不会因为容器被删除, 数据就会删除, 与容器的生命周期是解耦的
docker volume create
docker volume ls
docker volume insprect
docker volume prune :谨慎使用,会删除未被容器或者服务副本使用的全部卷。
docker volume rm
docker load:
docker load -i v3.0.1-20210919.all.M8.tar.gz
docker load < v3.0.1-20210919.all.M8.tar.gz
docker load : 导入使用 docker save 命令导出的镜像。

 语法docker load [OPTIONS]OPTIONS 说明:--input , -i : 指定导入的文件,代替 STDIN。--quiet , -q : 精简输出信息。

Dockerfile 编写:
官网:https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
菜鸟教程:https://www.runoob.com/docker/docker-dockerfile.html

ADD
ADD 指令和 COPY 的使用格类似(同样需求下,官方推荐使用 COPY)。功能也类似,不同之处如下:ADD 的优点:在执行 <源文件> 为 tar 压缩文件的话,压缩格式为 gzip, bzip2 以及 xz 的情况下,会自动复制并解压到 <目标路径>。
ADD 的缺点:在不解压的前提下,无法复制 tar 压缩文件。会令镜像构建缓存失效,从而可能会令镜像构建变得比较缓慢。具体是否使用,可以根据是否需要自动解压来决定。
CMD
类似于 RUN 指令,用于运行程序,但二者运行的时间点不同:CMD 在docker run 时运行。
RUN 是在 docker build。
####注意:如果 Dockerfile 中如果存在多个 CMD 指令,仅最后一个生效。####1、创建一个文件夹 viper-lite,并解压到其中
2、执行install.sh

强制删除所有容器:
docker container rm -f $(docker ps -a -q)
删除所有镜像:
docker image rm -f $(docker images)

查看Docker 指定容器启动日志:
docker logs nebula-mini

license CA:
:扩容信息, 路数的视频流信息。qutoa信息。

nebula 笔记:
创建目录:/home/yuyixiong/go/gopath/src/gitlab.sz.sensetime.com/senseNebula-m/nebula-mini
make arm=1
打镜像:
1:web.zip rootfs.tar 拷贝到nebula-mini西瓜分支代码目录
2:解压unzip web.zip
3:在代码根目录(/home/yuyixiong/go/gopath/src/gitlab.sz.sensetime.com/senseNebula-m/nebula-mini)中执行:./pack.sh ./ ./web ./rootfs.tar

安装docker-compose:
https://docs.docker.com/compose/install/#install-using-pip

主要是装Nginx的教程都是centOS的,Ubuntu的完全找不到...于是就抄着“yum -y install openssl openssl-devel”改成“apt-get install openssl openssl-devel”撸了一下...这个原因很简单,乌班图根本没这个软件,下载下面几个就行了sudo apt-get install libpcre3 libpcre3-dev
//有可能用到On ubuntu 16.04 you can use official apt package without install any other ppa repository.sudo apt install rustc
... and don't forget cargosudo apt install cargostandard_init_linux.go:211: exec user process caused "exec format error"sensetime@sensetime-desktop:/usr/local/bin$ sudo ln -s /home/sensetime/.local/bin/docker-compose /usr/local/bin/docker-compose
ln: failed to create symbolic link '/usr/local/bin/docker-compose/docker-compose': File exists
sensetime@sensetime-desktop:/usr/local/bin$ ls
docker-compose  nsys
sensetime@sensetime-desktop:/usr/local/bin$ sudo rm -rf docker-compose
sensetime@sensetime-desktop:/usr/local/bin$ sudo ln -s /home/sensetime/.local/bin/docker-compose /usr/local/bin/docker-compose
sensetime@sensetime-desktop:/usr/local/bin$ docker
docker          docker-compose  dockerd         docker-init     docker-proxy
sensetime@sensetime-desktop:/usr/local/bin$ docker-compose --version
docker-compose version 1.29.2, build unknown

原理解释:

    您可以docker inspect <image-id>查看一下你所docker pull下来的镜像架构("Architecture"属性),一般出现这种问题,表示镜像架构与运行时架构不匹配导致的。

单独启动一个容器 by yaml
docker-compose -f infra.yaml -p dms up -d

docker 及docker compose笔记相关推荐

  1. Docker基础讲解狂神笔记:容器数据卷,docker compose,docker swarm(2/2)未修订版欢迎留言补漏

    L06 容器数据卷 相对于01-05难度加大 什么是容器数据卷 Docker理念:将应用和环境打包成一个镜像! 程序要保存数据,数据并不能放在容器里面,因为一旦数据放在容器,误操作删除掉容器,数据也随 ...

  2. 《 第一本Docker书 》读书笔记 --- Docker 各项操作命令及参数说明(docker run 命令各个参数说明)

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. PS :个人所有读书笔记只记录个人想要的内容,很可能原书大量内容没有纳入笔记中... ... 1. ...

  3. Docker基础、进阶笔记,为k8s的学习预预热

    标题 Docker基础.进阶笔记,为k8s的学习预预热 笔记来源于视频: 狂神docker基础篇 狂神docker进阶篇 笔记中图片有些取自于:这位博主的两篇docker笔记中的一些图片 百度云笔记工 ...

  4. Docker与Docker Compose的安装以及Portainer容器管理工具

    Docker官网 概述 Docker 是一个用于开发.发布和运行应用程序的开放平台.Docker 能够将应用程序与基础架构分离,以便可以快速交付软件.使用 Docker,可以像管理应用程序一样管理基础 ...

  5. 【Docker 完整版教程笔记】

    文章目录 前言 Docker 概述 Docker 架构图 Docker安装 在线安装 离线安装 Docker 常用命令 帮助命令(--help) 镜像命令(images) docker images ...

  6. Docker学习及实践笔记

    Docker笔记基础 " 不可只停留于run 开端口 " 1. Docker的组成 镜像(images): 通过镜像这个模板来创建容器服务,镜像 ==> run ==> ...

  7. 阿里云服务器Docker及Docker Compose的安装

    2019独角兽企业重金招聘Python工程师标准>>> 本文对阿里云ECS服务器如何安装Docker和Docker Compose进行说明,以centOS系统为例. 一.开通外网的E ...

  8. docker 安装git_docker随手笔记第十二节 jenkins+docker+nginx+纯静态页面配置

    docker随手笔记第一节 docker概念及安装 docker随手笔记第二节 docker常用命令解析 docker随手笔记第三节 docker构建java镜像 docker随手笔记第四节 dock ...

  9. .NET遇上Docker - 使用Docker Compose组织Ngnix和.NETCore运行

    本文工具准备: Docker for Windows Visual Studio 2015 与 Visual Studio Tools for Docker 或 Visual Studio 2017 ...

最新文章

  1. jQuery的deferred对象详解
  2. Linux系统下基本命令
  3. 状态压缩dp入门 第一题 POJ 3254 Corn Fields
  4. 坐标系旋转变换公式图解
  5. 【Python数据预处理】 归一化(按列减均值,除方差),标准化(按列缩放到指定范围),正则化(范数)
  6. 为什么linux自带python_为什么一些linux自带python,而不是C,C++,java等其他编程语言?...
  7. nginx: [warn] the “ssl“ directive is deprecated, use the “listen ... ssl“ directive instead in
  8. vb和vb.net事件机制
  9. bzoj1699[Usaco2007 Jan]Balanced Lineup排队
  10. 动力环境监控系统论文_浅谈动力环境监控系统技术标准
  11. OpenResty缓存
  12. Delphi取UTC时间秒
  13. I.MX6 busybox set hosname and login with root
  14. 基于ASP的在线邮件收发系统研究设计
  15. Stale branches 设置_交通规划软件之TransCAD如何设置立交模型的步骤
  16. 建立统分结合、职责明确的疾控可持续发展信息化体系
  17. 图像放大的三种处理方法:最近邻插值,双线性插值 ,双三次插值算法
  18. Linux动态链接库.so文件的命名及用途总结
  19. 利用Python取出excel数据并生成统计图
  20. VC CDC类的使用 详解

热门文章

  1. 腾讯音乐娱乐集团与华纳音乐续签长期战略协议 并将联合成立全新音乐厂牌
  2. MATLAB运用——构造三维模型(水花号)(The Spary)
  3. matlab保存数据用什么指令_MATLAB文件操作及保存文件save load fopen | 学步园
  4. 剑指 Offer 46. 把数字翻译成字符串(动态规划+回溯+递归 解法)
  5. 计算机校园网络系统概述,计算机网络概述.ppt
  6. 西电计科19级保研情况分享
  7. ChatGPT的各项超能力从哪儿来?万字拆解追溯技术路线图来了
  8. 高考之后,入世之前,我上了数据的“贼船”
  9. duilib底层机制剖析:窗体类与窗体句柄的关联
  10. 教师专业技能考试试题计算机,Zmxepv信息技术教师考试题库