Docker介绍:

  1. 云计算就好比大货轮,docker就是集装箱虚拟机虽然可以隔离出很多“子电脑”,但占用空间更大,启动更慢,虚拟机软件可能还要花钱(例如VMWare)。
  2. 而容器技术恰好没有这些缺点。它不需要虚拟出整个操作系统,只需要虚拟一个小规模的环境(类似“沙箱”)。它启动时间很快,占的空间很小,资源的利用率很高

Docker 的组成:

  1. Docker 主机(Host):一个物理机或虚拟机,用于运行 Docker 服务进程和容器。
  2. Docker 服务端(Server):Docker 守护进程,运行 docker 容器。
  3. Docker 客户端(Client):客户端使用 docker 命令或其他工具调用 docker API
  4. Docker 仓库(Registry): 保存镜像的仓库,类似于 git svn 这样的版本控制系
  5. Docker 镜像(Images):镜像可以理解为创建实例使用的模板。
  6. Docker 容器(Container): 容器是从镜像生成对外提供服务的一个或一组服务。

一、docker安装:

  1. /安装系统工具:
  2. apt-get update
  3. apt-get -y install apt-transport-https ca-certificates curl software-properties-common
  4. /安装GPG证书
  5. curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | apt-key add -
  6. /写入软件源信息
  7. add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
  8. /更新并安装Docker-CE
  9. apt update
  10. apt-get -y install docker-ce=5:18.09.9~3-0~ubuntu-bionic docker-ce-cli=5:18.09.9~3-0~ubuntu-bionic

二:下载镜像:

  1. /从 docker 仓库将镜像下载到本地,命令格式如下:
  2. docker pull 仓库服务器:端口/项目名称/镜像名称:tag(版本)号
  3. /例如下载centos
  4. docker pull centos
  5. /查看本地镜像:
  6. docker images
  7. /删除镜像:通过镜像启动容器的时 候镜像不能被删除,除非将容器全部关闭
  8. docker rmi centos

三、容器操作基础命令:

  1. /创建并进入容器:
  2. docker run -d -ti --name zzx_centos centos:7 /bin/bash
  3. /使用 exec 命令进入到正在运行的容器:
  4. docker exec -ti zzx_nginx /bin/bash
  5. /进入容器查看系统版本:
  6. cat /etc/issue
  7. /进入之后要下载需要更新下载源:
  8. apt update
  9. /显示正在运行的容器:
  10. docker ps
  11. /显示所有容器:包括当前正在运行以及已经关闭的所有容器
  12. docker ps -a
  13. /批量关闭正在运行的容器:
  14. docker stop $(docker ps -a -q)
  15. /批量强制关闭正在运行的容器:
  16. docker kill $(docker ps -a -q)
  17. /删除容器:
  18. docker rm 容器 ID/容器名称 #删除容器
  19. docker rm -f 容器 ID/容器名称 #强制删除正在运行的容器
  20. /批量删除已经关闭的容器:
  21. docker rm `docker ps -q -a -f status=exited`
  22. /随机映射端口:
  23. docker pull nginx #下载 nginx 镜像
  24. docker run -d --name zzx_nginx nginx:latest
  25. /指定端口映射:
  26. docker run -d -ti --name zzx_nginx2 -p :80 nginx:latest #指定nginx的80端口映射为随机端口号
  27. docker run -d -ti --name zzx_nginx2 -p :80/tcp nginx:latest #还可指定为tcp或udp端口
  28. 端口映射完成就可以用本机ip浏览器访问
  29. /单次运行:直接进入容器,容器退出后自动删除
  30. docker run --rm -ti nginx /bin/bash
  31. /将容器映射到虚拟机/物理机(在容器里写文件,会同步到虚拟机/物理机,反过来同理):
  32. docker run -d -ti --name zzx_nginx3 -P -v /data/nginx1:/data/nginx1 nginx /bin/bash
  33. /给镜像做 tag
  34. docker tag nginx:latest images.zzx.com/system/nginx:1.18

Linux ubuntu下docker容器安装和基础命令的更多相关文章

  1. Linux(Ubuntu)下MySQL的安装与配置

    转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...

  2. Linux下Docker容器安装与使用

    注:作者使用的环境是CentOS 7,64位,使用yum源安装. 一.Docker容器的安装 1.查看操作系统及内核版本,CentOS 7安装docker要求系统为64位.系统内核版本为 3.10及以 ...

  3. 微服务架构 ------ Ubuntu下Docker的安装

    1.准备一个全新的Ubuntu环境 2.准备安装Docker及其依赖 apt-get update 更新数据源 apt-get -y install apt-transport-https ca-ce ...

  4. linux ubuntu下abaqus-6.14安装破解完全指南

    本人亲测可用 目录 安装前准备 安装过程 机器配置 腾讯云服务器 ubuntu server 16.10 1.首先要在服务器上安装gui及相关依赖 sudo apt-get install ubunt ...

  5. windows下docker的安装及常用命令学习

    docker search 镜像名 本文主要介绍Docker在Windows下的安装.关于Docker的介绍和文档在其官网中可以找到:http://www.docker.com .安装环境:Windo ...

  6. Linux(Ubuntu)下MySQL的安装

    1)首先检查系统中是否已经安装了MySQL 在终端里面输入 sudo netstat -tap | grep mysql 若没有反映,没有显示已安装结果,则没有安装.若如下显示,则表示已经安装 2)如 ...

  7. Linux系统下源码安装rz/sz命令

    背景:在windows环境下,使用xshell远程连接公司内部做的一个类似centos的系统,但该linux系统yum install有问题,只能源码安装. root 账号登陆后,依次执行以下命令: ...

  8. ubuntu下root和安装mysql

    sudo password创建新的root密码: 1.用当前登录用户打开终端,在终端输入命令 sudo passwd,输入当前用户的密码然后回车 2.会提示输入新密码,输入完成后回车(http://w ...

  9. Docker容器安装配置SQLServer服务(Linux)

    一:前言 随着不断的对Docker容器的实践和学习,越来越觉得容器的强大,把 SQL Server 数据库服务放在docker容器中,比你自己在宿主服务器上面安装配置一个SQL Server服务器是要 ...

随机推荐

  1. 如何移植sqlite3到嵌入式平台

    本人也时常看其他人的blog,搜索资料的目的是尽快解决当前的问题,例如如何移植一个ssh,尽快要明白所需的东西,方能移植完成. 移植sqlite3的步骤如下: 1. 到官方网站下载指定的源码包:htt ...

  2. Apache Ranger安装部署

    1.概述 Apache Ranger提供了一个集中式的安全管理框架,用户可以通过操作Ranger Admin页面来配置各种策略,从而实现对Hadoop生成组件,比如HDFS.YARN.Hive.HBa ...

  3. python-binasscii模块学习

    作用 binascii模块包含很多在二进制和ASCII编码的二进制表示转换的方法.通常情况不会直接使用这些功能,而是使用像UU,base64编码,或BinHex封装模块. binascii模块包含更高 ...

  4. HTTPS-各种加密方式

    推荐阅读:https://www.cnblogs.com/zwtblog/tag/计算机网络/ 目录 HTTPS 对称加密(AES) 非对称加密(RSA) 工作过程 分析 优缺点 常用算法 混合加密 ...

  5. Future和FutureTask的区别

    java中有Future和FutureTask这两个类 Future是一个接口,代表可以取消的任务,并可以获得任务的执行结果 FutureTask 是基本的实现了Future和runnable接口  ...

  6. 你是怎么看Spring框架的?

    Spring是一个轻量级的容器,非侵入性的框架.最重要的核心概念是IOC,并提供AOP概念的实现方式,提供对持久层,事务的支持,对当前流行的一些框架(Struts,Hibernate,MVC),Spi ...

  7. hook(v16.7测试)?

    在无状态组件(如函数式组件)中也能操作state以及其他react特性, 通过useState

  8. Spring框架中的单例bean是线程安全的吗?

    不,Spring框架中的单例bean不是线程安全的.

  9. MySQL 中有哪几种锁?

    1.表级锁:开销小,加锁快:不会出现死锁:锁定粒度大,发生锁冲突的概率最高,并发度最低. 2.行级锁:开销大,加锁慢:会出现死锁:锁定粒度最小,发生锁冲突的概率最低,并发度也最高. 3.页面锁:开销和 ...

  10. leetcode_两数相加

    给你两个 非空 的链表,表示两个非负的整数.它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字. 请你将两个数相加,并以相同形式返回一个表示和的链表. 你可以假设除了数字 0 ...