Docker基础教程

什么是docker

Docker 是世界领先的软件容器平台。开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用 Docker 可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用 Docker 可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为 Linux 和 Windows Server 应用发布新功能。

Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心环境问题。

为什么要用docker

容器除了运行其中应用外,基本不消耗额外的系统资源,使得应用的性能很高,同时系统的开销尽量小。传统虚拟机方式运行 10 个不同的应用就要起 10 个虚拟机,而Docker 只需要启动 10 个隔离的应用即可。

1、更快速的交付和部署
对开发和运维人员来说,最希望的就是一次创建或配置,可以在任意地方正常运行。

开发者可以使用一个标准的镜像来构建一套开发容器,开发完成之后,运维人员可以直接使用这个容器来部署代码。 Docker 可以快速创建容器,快速迭代应用程序,并让整个过程全程可见,使团队中的其他成员更容易理解应用程序是如何创建和工作的。 Docker 容器很轻很快!容器的启动时间是秒级的,大量地节约开发、测试、部署的时间。

2、更高效的虚拟化
Docker 容器的运行不需要额外的 hypervisor 支持,它是内核级的虚拟化,因此可以实现更高的性能和效率。

3、更轻松的迁移和扩展
Docker 容器几乎可以在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、个人电脑、服务器等。 这种兼容性可以让用户把一个应用程序从一个平台直接迁移到另外一个。

4、更简单的管理
使用 Docker,只需要小小的修改,就可以替代以往大量的更新工作。所有的修改都以增量的方式被分发和更新,从而实现自动化并且高效的管理。

CentOS安装docker
> sudo yum install -y yum-utils device-mapper-persistent-data lvm2

> sudo yum-config-manager 
--add-repo 
https://download.docker.com/linux/centos/docker-ce.repo  

> sudo yum install docker-ce docker-ce-cli containerd.io

> 启动docker:sudo systemctl start docker

> systemctl start docker.service

> 开机自启动:sudo systemctl enable docker
安装docker容器管理

docker volume create portainer_data

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

访问你的 IP:9000 即可进入容器管理页面。

搭建私有仓库

docker pull registry

docker run -d -v /registry:/var/lib/registry -p 5000:5000 --restart=always --privileged=true --name registry registry:latest

客户端添加Daemon->insecure registries

查看是否安装成功:curl http://ip:5000/v2/_catalog

常用的命令

查看运行容器:docker ps

查看所有容器:docker ps -a

进入容器: docker exec -it #{容器ID} /bin/bash

停用全部运行中的容器:docker stop ${docker ps -q}

删除全部容器 docker rm ${docker ps -aq}

停用并删除容器 docker stop $(docker ps -q) & docker rm $(docker ps -aq)

docker exec -it 容器名字 /bin/bash

redis安装

安装redis: docker pull redis

启动redis: docker run --name redis -p 6379:6379 -d redis --requirepass “123456”

mysql 安装

安装mysql: docker pull mysql5.7.25

创建挂载的目录: mkdir /data/mysql/data

启动mysql: docker run --name mysql5.7 -p 3306:3306 -v /data/mysql/data:/var/lib/mysql -v /data/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.25

mongo 安装

安装mongo: docker pull mongo:4.0.6

创建挂在的目录: mkdir /data/db

docker run --name mongo -p 27017:27017 -v /data/db:/data/db -d mongo:4.0.6 --auth

jekins 安装

安装jekins docker pull jekins

docker run --name myjenkins -p 8080:8080 -p 50000:50000 -v /var/jenkins_home jenkins

--name:容器名
--p:映射宿主主机端口
-v:挂载宿主目录到容器目录
-e:设置环境变量,此处指定root密码
-d:后台运行容器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值