网站建设资讯

NEWS

网站建设资讯

docker环境的搭建与使用

dock

成都创新互联2013年至今,先为泰宁等服务建站,泰宁等地企业,进行企业商务咨询服务。为泰宁企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。er设想是交付运行环境如同海运,OS如同一个货轮,每一个在OS基础上的软件都如同一个集装箱,用户可以通过标准化手段自由组装运行环境,同时集装箱的内容可以由用户自定义,也可以由专业人员制造。Docker中的容器,可以看作是将程序 + 运行环境的打包后的新程序。这时候,你就不用关心你的程序的运行环境了,因为容器里面的环境就是你当时开发环境的一个拷贝。下面就由创新互联建站小编和大家讲一讲docker环境的搭建与使用。

一、Docker环境搭建

我是Ubuntu16.04(64位),先在终端执行lsb_release -cs(我的输出结果是xenial),访问下载地址,依次选择xenial/pool/stable/amd64/,选择要下载的版本,复制链接地址,

$ wget https://download.docker.com/linux/ubuntu/dists/$(lsb_release -cs)/pool/stable/amd64/docker-ce_18.06.1~ce~3-0~ubuntu_amd64.deb $ dpkg -i docker-ce_18.06.1~ce~3-0~ubuntu_amd64.deb $ sudo usermod -aG docker $USER #将用户加入docker组,避免每次都要sudo

重启终端,不然还是需要sudo
$ docker run hello-world

docker-hello-world.png

注:可能会保存因为依赖包没有安装,根据错误信息安装即可

添加镜像源

主要是加速作用,不然可能有时候会卡半天。

$ sudo vi /etc/docker/daemon.json $ sudo cat /etc/docker/daemon.json { "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] #国内镜像源 } $ sudo systemctl enable docker #设置开机启动 $ sudo systemctl daemon-reload #重新加载配置 $ sudo systemctl restart docker #重启docker

docker-compose

这个Python程序可以方便地管理多个Docker实例组成的分布式服务。

$ sudo apt install python3-pip $ sudo pip3 install docker-compose

二、Docker简单使用

运行容器

$ docker run hello-world

这个命令首先会检查本地是否有hello-world容器

如果没有就通过image创建,其中image就是容器的模板(一个二进制文件),docker run image_name,实际上就是创建一个image实例,最后容器也就是一个文件。(也就是说,image就像相当于类,容器相当于类实例)

如果本地没有image就从docker的仓库下载下来

创建一个新的容器,并且启动容器

列出运行中容器

$ docker container ls #列出运行中的容器 $ docker container ls -all #列出全部容器

docker-containers.png

第一个字段是ID,用来标识容器实例,因为一个image可以生成多个容器。

结束容器运行

$ docker container kill $Container_ID #强行结束运行中的容器,这个主要用来针对作为服务运行的容器

删除容器

容器在结束运行后,一般不会自动删除,除非image中进行了配置,或者在run的使用使用了-rm。那么删除容器的命令是:

$ docker container rm $Container_ID

清理命令

docker 1.13开始 的清理命令

$ docker container prune -f #删除所有停止容器 $ docker image prune -f -a #删除所有镜像

删除none镜像

none 镜像是一些没有成功build的临时镜像,删掉即可。

$ docker rmi $(docker images -f "dangling=true" -q)

Docker还有很多强大功能,暂时我也只用到这几个而已了。

Docker核心解决的问题是利用LXC来实现类似VM的功能,从而利用更加节省的硬件资源提供给用户更多的计算资源。软文营销同VM的方式不同,LXC其并不是一套硬件虚拟化方法 - 无法归属到全虚拟化、部分虚拟化和半虚拟化中的任意一个,而是一个操作系统级虚拟化方法, 理解起来可能并不像VM那样直观。所以我们从虚拟化到docker要解决的问题出发,看看他是怎么满足用户虚拟化需求的。小伙伴们要想获得更多docker环境的内容,请关注创新互联!
当前标题:docker环境的搭建与使用
转载源于:http://njwzjz.com/article/soecgh.html