Docker--一门值得你学习的手艺

不讲虚的来点使用的

优点

  • 高效的环境部署/切换
  • 应用隔离保证安全性

只说上面两点 因为目前来说我只接触到了上面两点。

高效的环境部署/切换

用我之前写过的一个程序安装教程来说。

我们如果手动部署上面的程序,需要安装python MySQL 软件,而且还要手动去对文件进行操作,但是用的docker启动就是几条指令的问题,docker pull拉下来镜像,docker run 将镜像跑起来就可以 简简单单两条指令就完成了,而且docker的环境如果上传的开发者都测试好了 放到你机器上也不会出大问题。

应用隔离保证安全性

这点相对很重要,如果在一个生产环境中 某个程序突然出现了问题导致cpu内存拉满,极有可能影响到其他程序以致于导致损失,在docker中,每个环境都是用的单独的容器,任何一个容器爆炸都不会影响到其他的容器,并且docker支持内存限制,和cpu绑定功能,可以针对程序进行限制用量,保证生产环境的稳定运行。

常用指令

# 安装指令
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

# 常用指令
docker pull [镜像地址]  # 拉取镜像,国外可以用官方源,国内可以选择阿里源进行下载
docker images           # 列出已经下载的镜像
docker ps               # 列出正在运行的容器
docker run              # 创建容器 几个参数在下一个标题
docker cp 本地文件地址 容器名称:容器内目录   # 拷贝文件到容器内 也可以反过来 将容器内文件复制到本地
docker stop 容器名/ID   # 停止容器 docker ps指令可以查看到这两个参数 
docker start 容器名/ID  # 启动容器 docker ps指令可以查看到这两个参数 

run指令简介

docker run指令参数比较多 单独拿出来

  • -i:表示运行容器
  • -t:表示容器启动后会进入命令行,加上这个参数后,容器创建就能登陆进去。即分配了一个伪终端。
  • --name:为创建的容器命名
  • -v:表示目录映射关系(前者是宿主机目录,后者是容器中的目录)
  • -d:创建一个守护式容器在后台运行
  • -p:端口映射,前者是宿主机端口,后者是容器内端口

例:

创建一个守护式容器并运行 使用mysql镜像 并命名为123123 并将容器内3306端口映射到本地3306

docker run -id --name=123123 -p 3306:3306 mysql

守护式容器会在你退出之后依旧运行,还有一种是交互式容器,在你退出之后容器会停止运行一般使用 -it 参数创建

原创文章,作者:南猫,如若转载,请注明出处:https://southcat.net/2688/


不妨点个广告再走嘛

Leave a Reply

Your email address will not be published. Required fields are marked *

Comments(1)

  • 123
    123 2020年8月19日 pm11:36

    123