docker简单教程.够用就好

本文详细介绍了Docker的基本概念,包括其与虚拟机的区别、五大核心要素,以及Docker的安装、配置和基本命令操作。并通过实例展示了如何使用Docker安装和运行Redis,适合初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.docker是啥

Docker 提供轻量的虚拟化,通过docker镜像能创建出多个容器,一个容器相当于一个虚拟机。可以把镜像快速部署到无数台服务器上。

2.docker与虚拟机对比

  1. 虚拟机:资源全部隔离,cpu、内存、磁盘相互独立,一台宿主机中可以安装的虚拟机数量是一定的,有限的,移植性不强(文件很大,拷贝传输困难)。
  2. Docker:部分共享部分隔离,共享cpu,内存,磁盘甚至操作系统,极为轻量,如图所示:

3.Docker五大要素

  1. 沙箱:隔离,将应用之间的必要资源隔离开,防止互相影响,应用之间互相独立。
  2. 镜像:模板,使用dockerfile制作镜像,通过镜像创建容器。
  3. 容器:镜像的实例,镜像只读,容器可写,容器中可以保存应用产生的零时文件
  4. 数据卷:挂载到容器上,用于保存必要数据。比如容器中数据库的数据,但是不建议用,因为重启容器需要挂载同步数据,效率较慢,解决方式:数据库拆分
  5. 仓库:与maven仓库概念一致,应用都会保存在仓库中,创建容器是根据镜像的规定进行拉取,可以共享。

docker的仓库和镜像:

阿里云

网易云

4.docker的版本及要求

Docker分为docker-ce(社区版-开源)和docker-ee(企业级-收费)

Docker基于linux3.8及以上版本64bit内核开发,所以在使用docker前需要确认linux内核版本,一般centos7以上。

查看linux版本命令:

uname -a

 

5.docker安装

如不想安装可以直接下载.

https://download.youkuaiyun.com/download/weixin_42610529/11267286

1.	卸载老版本的 docker 及其相关依赖
sudo yum remove docker docker-common container-selinux docker-selinux docker-engine
2.	安装 yum-utils,它提供了 yum-config-manager,可用来管理yum源
sudo yum install -y yum-utils
3.	添加yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4.	更新索引
sudo yum makecache fast
5.	安装 docker-ce
sudo yum install docker-ce
6.   验证docker是否安装好
     执行docker version 命令查看docker的版本。
[root@localhost /]# docker version
    Client:
 Version:	17.12.1-ce
 API version:	1.35
 Go version:	go1.9.4
 Git commit:	7390fc6
 Built:	Tue Feb 27 22:15:20 2018
 OS/Arch:	linux/amd64

Server:
 Engine:
  Version:	17.12.1-ce
  API version:	1.35 (minimum version 1.12)
  Go version:	go1.9.4
  Git commit:	7390fc6
  Built:	Tue Feb 27 22:17:54 2018
  OS/Arch:	linux/amd64
  Experimental:	false

 

6.启动docker

//查看docker状态
systemctl status docker
Active: inactive (dead)

//启动docker
systemctl start docker

systemctl status docker

//停止docker	
service docker stop			

//重启docker
service docker restart	

7.docker命令

 

命令

用法

 yum -y install docker-ce

下载最新版的docker

service docker start

启动Docker服务

service docker stop

停止Docker服务

service docker restart

重新启动Docker服务

docker version

查看Docker的版本号

docker pull 镜像地址:版本

从镜像仓库中下载

docker save a2a69ca5184a > jt-centOS6.tar

根据镜像id导出镜像

docker save -o redis-3.2.8.tar redis:3.2.8

根据镜像名称导出镜像

docker load -i docker-centos-6.5.tar

指定jar包导入镜像文件

docker rmi a2a69ca5184a

根据Id号删除镜像文件

docker rmi -f a2a69ca5184a

强制删除镜像文件    删除镜像前需要先关闭容器

docker images

查询所有镜像文件

docker inspect index.alauda.cn/tutum/centos:6.5

查看镜像文件细节信息

docker tag 旧镜像名称和端口 redis-ali:0.0.1

修改镜像的名称

docker build -t 镜像名称:版本号

根据dockerfile来创建镜像文件

docker run -d --name 容器名 镜像名:版本号

根据镜像名称启动容器

docker run -d --name 容器名(自定) 镜像id号

根据镜像id启动容器

docker run -d -p 虚拟机端口:镜像端口 --name 容器名 镜像名:版本号

启动容器,并指定暴露端口

docker ps

查看活动的docker容器进程

Docker ps -a/-all

查看全部的容器

docker exec -it 容器id bash

进入指定的容器

docker stop 容器Id号

停止指定容器

docker start 容器Id号

启动创建好的容器

docker stop $(docker ps -q) & docker rm $(docker ps -aq)

关闭和删除所有的容器

docker rm 容器Id

删除指定的容器

8.docker中安装redis

将redis镜像上传到/usr/local/src/redis中然后执行下列命令:

redis的镜像请自己下载

https://download.youkuaiyun.com/download/weixin_42610529/11267332


cd /usr/local/src/redis

docker load -i redis-3.2.8.tar

9.创建容器

docker run -d --name redis7000 -p 7000:6379 redis:3.2.8
参数说明:
-d,则containter将会运行在后台模式(Detached mode)
--name 实例名称
-p 对外程序访问端口7000,宿主机映射的redis端口6379
最后的redis为镜像的名称
查看容器
docker ps -a

10.删除容器

docker stop redis7000
//容器状态是exit
docker ps -a
docker rm redis7000
docker ps -a
docker run -d --name redis7000 -p 7000:6379 redis:3.2.8
docker stop redis7000
docker start redis7000

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值