docker应用方法

一.docker使用方法

1.配置加速器

在/etc/docker/里修改daemon.json文件,修改成如下

vim /etc/docker/daemon.json

{

  "registry-mirrors":[ "https://registry.docker-cn.com" ]  ##docker镜像网址

}

2.镜像管理

查找镜像

[root@GGTESTNETWORK02 ~]# docker search centos

在公网下载centos 镜像

docker pull  centos

查看镜像

docker  images

打包镜像    可以用scp传到你的内网主机上使用

docker save centos:latest -o  centos.tar

把包恢复为镜像

[root@testwql jingxiang]# docker load -i centos.tar

删除镜像

[root@testwql jingxiang]# docker rmi -f centos

修改镜像名

[root@testwql yum.repos.d]# docker  tag  nginx:latest  mynginx(nginx:latest 原镜像名  mynginx  修改后的镜像名)

用于克隆镜像的

docker tag xxx xxx1(将什么,克隆成什么,可以当场软连接,要删一起删)

自定义镜像仓库

vi Dockerfile

FROM  centos  (基础镜像,基于哪个镜像创建)

MATNTAINER=”wk”  (创建者信息)

EXPOSE  8080  (开放的端口)

ENV          (设置变量)

ADD   aa  /root  (把本地aa  复制到镜像内/root里)

RUN          (制作镜像时执行的命令,可以有多个)

WORKDIR      (定义容器默认工作路径)

CMD          (容器启动时执行的命令,仅可以有一条)

想要自己建立镜像需要先创建文件目录

mkdir -p /root/dockerfile/library/centos/7

cd /root/dockerfile/library/centos/7/

在目录里创建容器里的简单执行脚本

vim docker.sh

#!/bin/bash

while true

do

echo "wk"

sleep 5

done

然后写镜像文件Dockerfile名字一定不能错

FROM centos #是基于那个镜像创建,没有的话会去公网下载

LABEL MAINTATNER="wk"#标签,创建者名字

RUN ln -sfv /usr/share/zoneinfo/Asia/Shanghai /etc/localtime#创建之前修改时区

COPY docker.sh /home/test/#将脚本复制到镜像里的test下,路径是相对Dockerfile的文件

RUN chmod +x /home/test/docker.sh#给镜像里边的脚本加执行权限

CMD ["/home/test/docker.sh"]#执行脚本,启动容器时,必须要有一个进程在执行,要不启不 了

建立镜像

docker build -t su/centos7:1 . (注意需要在有Dockerfile的目录里输入命令)

启动容器

docker run -dit su/centos7:1 /bin/bash(可以加/bin/bash,也可以不加)

docker run -dit --name sunan su/centos7:1 (启动的时候给容器器个名字叫sunan)

-d :放在后台运行

  -i:可以交互输入命令

  -t:启动一个伪终端

  -c:指定几个cpu来运行内存

  -m:指定几个内容。

  隐形参数--name 给容器起名。

  看容器的日志

docker logs sunan(可以是名字,也可以是id)

3.容器管理与使用方法

查看正在运行的容器

docker ps

查看所有容器列表

docker ps –a

显示所有容器的id

docker ps –aq

启动容器

docker start xxx(可以是容器的名字,也可以是容器的id)

关闭容器

docker stop  xxx(可以是容器的名字,也可以是id)

重新启动容器

docker restart  xxx(可以是容器的名字,也可以是id)

查看容器进程列表

docker top  xxx(可以是容器的名字,也可以是id)

查看容器底层信息

docker inspect  xxx(可以是容器的名字,也可以是id)

删除容器

docker rm  xxx(可以是容器的名字,也可以是id)

-f  强删

容器改名

docker rename xxx  yyy(xxx原来的名字,yyy想要叫的名字)

进入容器退出时关闭容器

[root@testwql ~]# docker attach elated_babbage

进入容器退出时不关闭容器

[root@testwql ~]# docker exec -it  unruffled_keller  /bin/bash

【原创,转载请附带本链接】

https://www.jianshu.com/u/0bebd11f6513

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

相关阅读更多精彩内容

  • docker的使用 5.1从docker镜像仓库获取镜像的命令 docker pull [选项] [Docker ...
    爱学习的ren阅读 5,547评论 0 0
  • 《Docker从入门到实践》阅读笔记 原书地址: https://yeasy.gitbooks.io/docker...
    GuoYuebo阅读 13,926评论 1 39
  • Docker入门(程序员和运维必备) 首先来简单说下什么是Docker Docker 是一个开源的应用容器引擎,让...
    逸辰_fb60阅读 4,264评论 0 0
  • 一、Docker 简介 Docker 两个主要部件:Docker: 开源的容器虚拟化平台Docker Hub: 用...
    R_X阅读 9,861评论 0 27
  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 5,829评论 0 7

友情链接更多精彩内容