docker安装 镜像和容器的操作

目录

  • 1 docker 介绍
  • 3 centos安装docker
  • 2 容器和镜像
  • 3 加速配置
  • 4 镜像操作
  • 5 容器操作

1 docker 介绍

# 1  虚拟化---》虚拟机,硬件虚拟化
# 2 docker:centos系统--》大约90m
# 3 开源项目,诞生于2013----》17年以后--》两年多的时间
# 4 基于go语言实现的---》docker ce:免费的  docker ee:收费
# 5 轻量级的操作系统虚拟化解决方案
# 6 Docker 的基础是 Linux 容器(LXC)等技术
# 7 用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机一样简单
# 8 django写了个项目,
	-部署到服务器---》代码放到服务器--》服务器装python环境(版本)--》django环境(版本)--》mysql(版本)
  -docker部署--》项目做成docker镜像-----》放到服务器---》拉起镜像(容器)---》项目就运行了

# 9 虚拟机--》python,mysql,redis,nginx---》虚拟机的大文件,直接copy到新机器上,用虚拟机的软件打开---》跑起来---》就是你之前装好的操作系统

# 10 跟传统虚拟机的比较
# 11 都用同样的docker环境开发:不涉及到版本问题

# 12 解决的问题
	-保证程序运行环境的一致性;
	-降低配置开发环境、生产环境的复杂度和成本;
	-实现程序的快速部署和分发

# 13 docker 是一个c/s架构软件(客户端,服务端)
# 14 docker客户端通过restful跟服务端做交互
# 15 服务端:容器,镜像,数据卷,网络

# 16 客服端,服务端,仓库(放了一堆镜像):当客户端发一条命令(拉取redis镜像)---》服务端守护进程接收---》去仓库拿redis镜像,放到服务端本地

# 学docker:就是学一堆命令

3 centos安装docker

# 1  centos7以上
# 2 安装步骤
  -1 sudo yum update # 更新yum源
  -2 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # 安装一些依赖包
  -3 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 把源设置为阿里云,安装比较快
  -4 sudo yum install docker-ce  # 安装docker-ce
  -5 docker -v    # 查看客户端版本
  -6 docker version  # 客户端和服务端的版本,看不到服务端的版本(服务端没有启动)
  -7 systemctl start docker # 服务端启动
# 3 版本问题:
	老版本:之前没有分docker ce 和docker ee ,17之前是老版本
  新版本:17以后,新版本(操作都不太一样)

2 容器和镜像

# 1 类和对象的关系:类可以产生对象,而且可以产生多个对象
# 2 镜像和容器:一个镜像可以运行出多个容器,运行起来的容器:当成虚拟机:centos7+redis
# 3 如果拉取了一个redis镜像:相当于一个linux操作系统上面安装了redis软件
# 4 真正的执行,容器在运行(操作系统+软件)
# 5 镜像:一堆文件,必须要运行起来,成为容器

3 加速配置

# 拉取镜像,是从远程拉的,在国外,速度非常慢,换成国内的镜像:清华,阿里。。。
# 一开始没有:daemon.json
vi /etc/docker/daemon.json
# 设置成七牛源(如果启动不了,没有严格按照josn格式,排查一下即可)
{
"registry-mirrors": ["https://reg-mirror.qiniu.com"]
}

# 重启docker服务
systemctl restart docker 

systemctl stop docker  # 停止docker服务
systemctl start docker # 启动docker服务

systemctl status docker # 查看docker状态
systemctl enable docker # 设置成开机启动
docker info  # 查看docker 概要信息

4 镜像操作

#1  镜像查找
docker search 镜像名字
https://hub.docker.com/
NAME   DESCRIPTION     STARS    OFFICIAL
镜像名字   描述          start数   是否是官方
# 2 镜像查看(***)
docker images  # 查看本地镜像
REPOSITORY   TAG      IMAGE ID         CREATED             SIZE
redis       latest    f0453552d7f2    2 weeks ago         98.2MB
python      3.6       1daf62e8cab5    4 weeks ago         914MB

# 3 镜像下载pull(****)
docker pull centos:版本号
docker pull centos # 不指定版本号,表示下载最新的,等同于docker pull centos:latest
docker pull centos:7
docker pull centos:centos6.6

# 镜像删除
docker rmi 镜像名字/id号

# 一次性删除所有镜像
docker rmi `docker images -q`  # 这个不要用

docker images -q # 过滤出所有id号

5 容器操作

# 创建并启动(创建(create)  启动(start))
docker run
创建容器命令:docker run
-i:表示运行容器
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
-t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
--name :为创建的容器命名。
-v:数据卷:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射

docker run -it --name=mycentos centos:7  # -i -t 两个可以合成一个
   #接下来操作的是mycentos这个容器
   #可以安装软件,它就是一个centos7
   # 你之前拉取的redis的镜像:linux+redis软件
exit 退出容器(在容器内部),退出容器,容器也就停止。
docker run -di --name=mycentos2 centos:7
	# docker run -d -i --name=mycentos2 centos:7
	# 每个容器都用自己的id号:(创建出来就立即生成)b1eeace155b54e467dfcbc42bb2fa5b580db5463f230a3eae1b27b74de4c597

 docker run -d -i --name=mycentos3 centos  # 如果本地没有最新的centos镜像,自动先去拉取(相当于docker pull centos:latest),然后创建并允许

 # 启动一个redis容器
docker run -di --name=myredis -p 6379:6379 redis
  # 把本机的reids停掉
  # 端口映射,6378 6379

# 用docker 允许一个服务(装一个软件),变得异常简单
	-linux安装redis(源码下载,解压,make & make insall)

# 查看容器  (查看正在运行,查看所有)
查看正在运行的容器
docker ps
查看所有容器
docker ps –a
查看最后一次运行的容器
docker ps –l
查看停止的容器
docker ps -f status=exited

# 启动和进入容器
docker exec -it ID/容器名  /bin/bash  # 运行并进入一个已经存在的容器
docker start 容器名/容器ID   # 启动一个已经存在的docker
docker attach 容器名/容器ID(44fc0f0582d9)  # 进入正在运行的容器

# 停止redis服务
docker stop myredis

# 删除一个容器
docker rm 容器名
docker rm mycentos

一个容器中有多个软件(一般情况下,不要在一个容器里装多个服务)

mysql redis python

centos---》装python--》装mysql--》装redis

redis容器---》装python--》装mysql

原文地址:https://www.cnblogs.com/zhangchaocoming/p/12602433.html

时间: 2024-10-11 12:30:46

docker安装 镜像和容器的操作的相关文章

docker实战之centos6.5上安装、镜像、容器相关操作

学习docker前,理解以下几个概念有助于更好的使用docker.镜像,容器,仓库.镜像,就是一个操作系统环境,里面只有你需要的几个应用程序,如apache,mysql,php之类,只读模板.容器,从镜像创建的运行实例.可视为一个简易环境中和其中运行的应用.仓库,存放镜像的地方.学过git的同学可能更容易理解. 一.安装docker时,增加第三方源epel如果是centos7,下载并安装这个软件包#wget http://mirror.hust.edu.cn/epel/beta/7/x86_64

docker 修改镜像和容器的存放路径(最新自己实践了第三种方法)

原文:docker 修改镜像和容器的存放路径(最新自己实践了第三种方法) docker info :查看docker的存储等相关信息. 将路径修改至挂载磁盘中 前提:磁盘已挂载成功 方法一: 1.停止docker 服务 service docker stop 2.备份数据到新的存放路径 cp -r /var/lib/docker/* /mnt/docker 3.备份 /var/lib/docker 路径 mv /var/lib/docker /var/lib/dockerbak} 4.创建软连接

Docker的镜像、容器和仓库

Docker本身的镜像是构建在其本身的文件系统之上的,Docker有很多种类的文件系统,Docker所支持的文件系统有以下几种:Aufs.devicemapper.btrfs和VFS,其中前三种是联合文件系统,可以支持分层,可以快速迭代,可以回滚.VFS 不支持.平时用的最多的是aufs 和devicemapper.Aufs(advanced multilayered unification filesystem), 直译过来就是高级分层联合文件系统,做为一种Union FS ,它支持将不同的目

Docker的镜像和容器

Docker image详细介绍 在之前的介绍中,我们知道docker images 是docker的三大组件之一. docker把下载的 images 存储到docker主机上,如果一个 image 不在主机上,docker会从一个镜像仓库下载,默认的仓库是  DOCKER HUB  公共仓库. 接下来将介绍更多关于docker images 的内容,包括: 使用和管理本地主机上的 images 创建一个基础的 images 上传 images 到docker hub (公共 images 仓

2.0 docker 安装镜像

1.实例,安装centos docker search -s 15 centos    ,其中docker serach 代表搜索命令, 最后 centos代表要搜索的镜像名称      2.选择某个镜像安装 根据Name可以指定,也可以不指定.会进行默认最新安装 docker pull docker.io/centos   [其中docker.io/centos 代表名称]        此时开始下载并安装 3.开始运行该镜像, (从镜像创建一个容器)         (1)开始运行 其中 -

docker(二)镜像和容器常用命令

一.镜像操作 1.搜索镜像 可以直接在Docker Hub 直接搜索镜像,当然也可以使用命令来搜索. docker search 名称 docker search tomcat 2.拉取镜像 docker pull 镜像名 #拉取redis3.0 docker pull redis:3.0 3.查看镜像列表 Docker镜像保存在/var/lib/docker docker images docker images -a docker images -q(显示id) 4.删除镜像 docker

腾讯云CentOS 7.6 64位之docker的镜像和容器练习

本文使用的Docker是社区版,版本是19.03.2,这个版本是本文写时的最新版. 首先总结下容器和镜像的概念: 容器是用镜像创建的,一个镜像可以创建多个容器. 一般来说,一个容器就是一个应用,把应用在容器中运行称之为应用容器化. 删除镜像的时候,如果由这个镜像创建的容器还存在则会删除失败. 容器和镜像的关系就是:容器是镜像的实例化的可运行实体. 以下是我的练习内容: 1. 拉取镜像  docker pull centos:latest  或者按照版本拉取:docker pull centos:

docker安装镜像基本指令

Docker的安装: (1)yum 包更新到最新 > yum update (2)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的 > yum install -y yum-utils device-mapper-persistent-data lvm2 (3)设置yum源为阿里云 > yum-config-manager --add-repo http://mirrors.aliyun.com/docker

s3 Docker的镜像和容器

Docker技术里最为基础的两大概念:镜像和容器.镜像的 获取方式:从registry拉取,从Dockerfile构建:容器的基本操作 1 Docker架构和底层技术简介 Docker Platform Docker提供了一个开发,打包,运行app的平台 把app和底层infrastructure隔离开来 Docker Engine 后台进程(dockerd) REST API Server CLI接口(docker) Docker Architecture 底层技术支持 Namespaces: