本篇内容介绍了“Docker安装及基本命令介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
###安装/启动Docker
####在CentOS 7上安装
Docker默认已经包含在CentOS-Extra仓库中,使用以下命令安装
sudo yum install docker
####在CentOS 6.5上安装
对于CentOS 6.5,Docker是 EPEL 仓库的一部分,因此需要确保已经加入EPEL的YUM源。在CentOS 6上,Docker的包名可能与桌面的docker应用冲突,因此,它的包名改为了docker-io
。
sudo yum -y remove docker sudo yum install docker-io
####启动Docker
安装Docker之后,需要启动Docker守护进程
sudo service docker start
为了让docker能够开机运行,需要使用chkconfig:
sudo chkconfig docker on
获取Docker镜像,启动Docker容器
sudo docker pull centos sudo docker images centos sudo docker run -i -t centos /bin/bash
###基本命令
下列命令创建一个容器简单的输出Hello world:
$ docker run ubuntu:14.04 /bin/echo 'Hello, world' Hello, world
这里docker run
命令指定了使用的镜像为ubuntu:14.04
,我们的容器就是从该镜像运行。当指定一个镜像的时候,Docker首先会在你的宿主机上查找是否存在该镜像,如果不存在的话会从Docker Hub下载。
接下来指定了要在容器中运行的命令是/bin/echo 'Hello, world'
,当容器启动之后,Docker会创建一个新的ubuntu 14.04的环境,然后在里面执行这个命令。当命令执行完毕之后,Docker创建的这个容器的生命周期就结束了。
下面我们创建一个交互式的容器:
$ docker run -t -i ubuntu:14.04 /bin/bash root@af8bae53bdd3:/#
这次同样启动了ubuntu 14.04的镜像,但是这里指定了两个额外的参数-t
和-i
。参数-t
为刚才创建的容器分配一个伪终端(pseudo-tty),-i
则允许我们通过获取容器的标准输入创建一个交互式的连接。
要退出该容器,在终端输入exit
或者ctrl+D
即可,这样该容器就可以停止了
root@2e3e7e77adbd:/# exit exit
几个常用的docker命令:
docker ps
列出Container
docker logs
显示容器的标准输出
docker stop
停止运行中的容器
docker version
显示当前docker客户端和守护进程的版本信息
docker
命令的子命令很多,
attach 附加到一个运行中的容器上去 build 从Dockerfile构建镜像 commit 从容器当前的修改创建一个新的镜像 cp 从容器的文件系统复制文件/文件夹到主机路径 create 创建一个新的容器 diff 检查容器文件系统发生的修改 events 从服务器获取实时的事件 exec 在已存在的容器中运行命令 export 将容器中的内容以流的方式导出为tar归档 history 显示镜像的历史 images 列出所有镜像 import 从tar包中的内容创建一个新的文件系统镜像 info 显示系统的信息 inspect 返回容器低级的信息 kill 杀掉一个运行中的容器 load 从tar归档载入镜像 login 注册或者登录到Docker注册服务器 logout 从Docker注册服务器登出 logs 检索容器中的日志 port 查询基于NAT到PRIVATE_PORT的公开端口 pause 暂停容器中所有的进程 ps 列出容器 pull 从Docker注册服务器拉取一个镜像或者仓库 push 推送一个镜像或者仓库到Docker注册服务器 restart 重启一个运行中的容器 rm 删除一个/多个容器 rmi 删除一个/多个镜像 run 在新的容器中运行命令 save 保存镜像到tar归档 search 从Docker Hub搜索一个镜像 start 启动一个已经停止的容器 stop 停止运行中的容器 tag 为仓库中的镜像添加标签 top 查询容器中运行的进程 unpause 取消容器的暂停状态 version 显示Docker的版本信息 wait 堵塞住直到容器停止,然后打印它的退出码
使用Dockerfile构建镜像:
docker build -t <your username>/<image name> .
运行镜像:
docker run -p <本地端口>:<容器端口> -d <镜像名称> curl -i <本地IP>:<本地端口>
查看容器的日志(类似于tail -f
命令)
docker logs -f <容器名称>
####例子:使用官方Nginx Docker镜像
使用之前,需要先获取官方nginx镜像
docker pull nginx
执行命令如下
docker run --name nginx_server -d -p 8080:80 -v /Users/mylxsw/codes/php:/usr/share/nginx/html:ro nginx
下面对提供的参数进行一一解释:
--name
指定了我们创建的容器名称为nginx_server
-d
指定了容器在后台运行
-p
则指定了将容器的80
端口映射到宿主机的8080
端口
-v
参数指定了将本地的/Users/mylxsw/codes/php
目录映射到容器的/usr/share/nginx/html
目录,并且访问权限为只读
启动该容器之后,就可以通过http://localhost:8080
访问了。
更复杂一点,可以通过使用-v
参数指定nginx配置文件-v /some/nginx.conf:/etc/nginx/nginx.conf:ro
。
在指定新的nginx配置文件时,注意一定要设置nginx的
daemon off;
配置项,如果以后台模式运行的话,容器就没法跟踪nginx的进程,容器启动后就会立即结束。
如果仅仅是测试的话,可以使用--rm
选项,这样,在容器结束运行之后就可以自动删除,当然使用--rm
选项的时候不能和-d
选项同时使用。
docker run --rm --name nginx_server -d -p 8080:80 -v /Users/mylxsw/codes/php:/usr/share/nginx/html:ro nginx
“Docker安装及基本命令介绍”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。