CentOs7下阿里云docker安装、操作、拉取镜像(完整)
1.软件支撑包。yum-utils device-mapper-persistent-data lvm2
yum -y install yum-utils device-mapper-persistent-data lvm2
rpm -qa | grep yum-utils 检查包
2.配置软件源信息。(这里推荐是阿里云docker源,国内较快,如果是docker公司的,在拉取大件的时候会很慢)
1-/etc/yum.repos.d/新建.repo
2 -直接新增
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#之后操作其他作用软件下载秒速
3.新建阿里云dokcer镜像加速器。 这个镜像仓库可以自己申请,然后选择本地就可以了。
vim /etc/docker/daemon.json #新建文件,插入字典数据
3.更新yum缓存,安装软件包
yum makecache fast #更新缓存 yum -y install docker.ce #安装软件包
4.启动docker ,或加入开机启动
systemctl start docker #启动 systemctl enable docker #开机启动 systemctl is-enabled docker #检查开机状态
docker version #检查docker版本
5.docker 命令补全功能插件,tab键快速补全。
yum -y install bash-completion #安装插件 source /usr/share/bash_completion/bash_completion #写入缓存
6.基础操作 dokcer + ?
docker create docker create --name yanxi1 httpd #创建一个名为yanxi1的带httpd作用的容器
docker ps -a #查看容器所有状态
其他命令
docker start yanxi1/容器id #启动,可以根据容器名或容器id docker stop yanxi1/容器id #停止,也是一样。 docker container ls #查看容器状态 docker rm yanxi1/容器id #删除容器,也是一样。
docker attach yanxi1/容器id #进入某个容器,退出后,容器停止
docker exec #进入某个容器,退出后,容器不会停止
docker pause yanx1/容器id #暂停某个容器
docker unpause yanxi1/容器id 恢复容器的运行状态
docker kill yanxi/容器id #强制停止容器京城
doekr images #查看镜像仓库,有那么软件、服务
docker run #创建一个新容器并运行
docker run [options] image [command] [arg]
docker run -ti 容器名、容器id /bin/bash #创建一个新容器运行并分配一个新的交互终端使用bin/bash 命令
在容器中可以,exit 退出
7.新建一个centOs7的容器主机,内核层还是使用的本机的,如果本机系统有的服务,那么多个容器主机都会公用这个层。
-1.查看本机,拉去镜像。
cat /ect/redhat-release
docker pull centos7.xxx.xx #拉去centos7镜像
docker images #查看仓库镜像
-2.进入容器主机
docker run -it --name redhat1 centOs #如果不是镜像仓库中的,就会在网上下载获取
exit 退出
8.新建一个httpd服务的容器,并指定容器名、端口访问
docker -run --name httpd -d -p 8080:80 htppd #新建运行指定容器名httpd ,并指定主机端口{映射}:容器端口 指定httpd服务
访问主机的端口,也就是容器的端口服务
修改httpd下面的内容,然后在重新访问。
docker exec -it httpd1 /bin/bash
注:run 的语法参数
语法
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明:
-
-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
-
-d: 后台运行容器,并返回容器ID;
-
-i: 以交互模式运行容器,通常与 -t 同时使用;
-
-P: 随机端口映射,容器内部端口随机映射到主机的高端口
-
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-
--name="nginx-lb": 为容器指定一个名称;
-
--dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;
-
--dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;
-
-h "mars": 指定容器的hostname;
-
-e username="ritchie": 设置环境变量;
-
--env-file=[]: 从指定文件读入环境变量;
-
--cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;
-
-m :设置容器使用内存最大值;
-
--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container:<name|id> 四种类型;
-
--link=[]: 添加链接到另一个容器;
-
--expose=[]: 开放一个端口或一组端口;
-
--volume , -v: 绑定一个卷