docker学习初步

一、什么是docker

虚拟机(virtual machine)就是带环境安装的一种解决方案。它可以在一种操作系统里面运行另一种操作系统,但是虚拟机有占用资源多、冗余步骤多、启动慢的缺点。由于虚拟机存在这些缺点,Linux 发展出了另一种虚拟化技术:Linux 容器(Linux Containers,缩写为 LXC),对进程进行隔离,实现与底层系统的隔离,进程级别。Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。

二、docker可以干什么

Web 应用的自动化打包和发布。
自动化测试和持续集成、发布。
在服务型环境中部署和调整数据库或其他的后台应用。
从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。
三、安装docker

四、docker学习初步

第一步查看docker程序是否存在,功能是否正常:

sudodockerversion s u d o d o c k e r v e r s i o n 或 sudo docker info

执行此命令出现如下错误
这里写图片描述

错误原因:docker进程使用Unix Socket而不是TCP端口,默认情况下,Unix socket属于root用户,需要root权限才能访问
这里写图片描述

用户没有办法使用sudo命令,解决步骤:
这里写图片描述

命令说明:切换到root用户命令,添加sudo文件的写权限命令,编辑sudoers文件(找到 root ALL=(ALL) ALL,在下面添加 zz ALL=(ALL) NOPASSWD: ALL ,意为允许zz用户执行sudo命令并且在执行的时候不用输入密码),撤销sudo文件的写权限命令,切换回普通用户命令(正确命令为# su zz)。
第二步用docker run命令创建容器:
这里写图片描述

命令说明:查看已有镜像,告诉Docker基于ubuntu:14.04镜像来创建容器,-i标志保证容器中STDIN是开启的,-t告诉docker为要创建的容器分配一个伪tty终端(逻辑终端设备l)。这样,新建的容器才能提供一个交互式shell。首先Docker检查本地是否有ubuntu:14.04镜像,若无则链接官方Docker Hub Registry查看Docker Hub中是否有该镜像,若找到则将其保存到本地宿主机中,然后用这个镜像创建一个新容器。最后我们告诉新容器中要运行/bin/bash命令启动一个Bash shell。

报错了,解决办法如下,添加 net.ipv4.ip_forward=1代码,又报“Permisson
denied”说明权限不够,要切换到root用户,

写入成功,重启网卡又报错(docker学习初步一天的时间净在改错了),接着百度找解决方法吧。。。通过如下方法成功解决(原因目前不清楚,后续学习后会补充)

这里写图片描述
这

终于容器创建成功了!!!(普天同庆)这里写图片描述

hostname :获取该容器的主机名

ps -aux :查看容器中运行的进程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值