1.Docker登入docker hub账号,(Docker hub上申请的账号即可)

[root@www ~]# docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: ******
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded

2.搜索镜像库中的镜像;

[root@www ~]# docker search nginx
NAME                                                   DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
nginx                                                  Official build of Nginx.                        10250               [OK]
jwilder/nginx-proxy                                    Automated Nginx reverse proxy for docker con…   1462                                    [OK]
richarvey/nginx-php-fpm                                Container running Nginx + PHP-FPM capable of…   647                                     [OK]
jrcs/letsencrypt-nginx-proxy-companion                 LetsEncrypt container to use with nginx as p…   438                                     [OK]
kong                                                   Open-source Microservice & API Management la…   247                 [OK]
webdevops/php-nginx                                    Nginx with PHP-FPM                              117                                     [OK]
kitematic/hello-world-nginx                            A light-weight nginx container that demonstr…   112
zabbix/zabbix-web-nginx-mysql                          Zabbix frontend based on Nginx web-server wi…   75                                      [OK]
bitnami/nginx                                          Bitnami nginx Docker Image                      58                                      [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5   ubuntu-16-nginx-php-phpmyadmin-mysql-5          47                                      [OK]
linuxserver/nginx                                      An Nginx container, brought to you by LinuxS…   43
tobi312/rpi-nginx                                      NGINX on Raspberry Pi / armhf                   23                                      [OK]
blacklabelops/nginx                                    Dockerized Nginx Reverse Proxy Server.          12                                      [OK]
nginx/nginx-ingress                                    NGINX Ingress Controller for Kubernetes         12
wodby/drupal-nginx                                     Nginx for Drupal container image                11                                      [OK]
centos/nginx-18-centos7                                Platform for running nginx 1.8 or building n…   8
nginxdemos/hello                                       NGINX webserver that serves a simple page co…   8                                       [OK]
centos/nginx-112-centos7                               Platform for running nginx 1.12 or building …   5
1science/nginx                                         Nginx Docker images that include Consul Temp…   4                                       [OK]
travix/nginx                                           NGinx reverse proxy                             2                                       [OK]
pebbletech/nginx-proxy                                 nginx-proxy sets up a container running ngin…   2                                       [OK]
mailu/nginx                                            Mailu nginx frontend                            2                                       [OK]
toccoag/openshift-nginx                                Nginx reverse proxy for Nice running on same…   1                                       [OK]
wodby/nginx                                            Generic nginx                                   0                                       [OK]
ansibleplaybookbundle/nginx-apb                        An APB to deploy NGINX                          0                                       [OK]

3.docker拉取存在docker hub上的镜像至本地(下载Docker hub上的镜像);

[root@www ~]# docker pull httpd:2.4.37-alpine
2.4.37-alpine: Pulling from library/httpd
4fe2ade4980c: Already exists
42101a4e4c4e: Pull complete
73eadb9961ff: Pull complete
830983fb5ec2: Pull complete
78fb51bbfc27: Pull complete
Digest: sha256:b875793145fe613aa2d1f73f1cd8ec09b775abcd6980024bc60a6a9c73d644fc
Status: Downloaded newer image for httpd:2.4.37-alpine
[root@www ~]# docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
httpd               2.4.37-alpine       11fc0c2a2dfa        4 days ago          91.8MB
nginx               1.14-alpine         77bae8d00654        13 days ago         17.7MB
ljymyy/nginx        latest              77bae8d00654        13 days ago         17.7MB

4.基于容器制作镜像

[root@www ~]# docker container  run --name httpd1 httpd:2.4.37-alpine
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
[Tue Nov 20 09:19:04.710155 2018] [mpm_event:notice] [pid 1:tid 140394175941512] AH00489: Apache/2.4.37 (Unix) configured -- resuming normal operations
[Tue Nov 20 09:19:04.719195 2018] [core:notice] [pid 1:tid 140394175941512] AH00094: Command line: 'httpd -D FOREGROUND'
[root@www ~]# docker exec -it httpd1 /bin/sh
/usr/local/apache2 #
/usr/local/apache2 # vi htdocs/index.html
/usr/local/apache2 # exit
[root@www ~]# docker commit httpd1 ljymyy/httpd:private
sha256:0c28c4522c128a7dca17c26d2fd8eee4e57642b455c067832d5567da1128da5e
[root@www ~]# docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ljymyy/httpd        private             0c28c4522c12        6 seconds ago       91.8MB
httpd               2.4.37-alpine       11fc0c2a2dfa        4 days ago          91.8MB
nginx               1.14-alpine         77bae8d00654        13 days ago         17.7MB
ljymyy/nginx        latest              77bae8d00654        13 days ago         17.7MB[root@www ~]# curl 172.17.0.2
<html><body><h1>It works!</h1></body></html>test successful

测试:

[root@www ~]# docker run --name httpd2 --rm ljymyy/httpd:private
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.3. Set the 'ServerName' directive globally to suppress this message
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.3. Set the 'ServerName' directive globally to suppress this message
[Tue Nov 20 09:39:27.805890 2018] [mpm_event:notice] [pid 1:tid 140674896550792] AH00489: Apache/2.4.37 (Unix) configured -- resuming normal operations
[Tue Nov 20 09:39:27.806444 2018] [core:notice] [pid 1:tid 140674896550792] AH00094: Command line: 'httpd -D FOREGROUND'
172.17.0.1 - - [20/Nov/2018:09:39:39 +0000] "GET / HTTP/1.1" 200 63[root@www ~]# curl 172.17.0.3
<html><body><h1>It works!</h1></body></html>test successful

5.为镜像打标签;(IMAGE ID为相同的)

[root@www ~]# docker tag ljymyy/httpd:private ljymyy/httpd:v2.0
[root@www ~]# docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ljymyy/httpd        private             0c28c4522c12        5 minutes ago       91.8MB
ljymyy/httpd        v2.0                0c28c4522c12        5 minutes ago       91.8MB
httpd               2.4.37-alpine       11fc0c2a2dfa        4 days ago          91.8MB
ljymyy/nginx        latest              77bae8d00654        13 days ago         17.7MB
nginx               1.14-alpine         77bae8d00654        13 days ago         17.7MB

6.将本地镜像上传至docker hub库中;

在docker hub上的dashboard中创建一个个人的Repository;创建相对应的namespace和repository name;例如:ljymyy/httpd

[root@www ~]# docker push ljymyy/httpd:v2.0
The push refers to repository [docker.io/ljymyy/httpd]
9dd07a03f263: Layer already exists
86503dd49098: Layer already exists
9caa02067460: Layer already exists
05f824de9453: Layer already exists
7df053e22514: Layer already exists
df64d3292fd6: Layer already exists
v2.0: digest: sha256:5b3aea8b8ed49fc642f46282c8bfeabf023fcbde0635341401a37ba0778af2a3 size: 1569

7.将镜像导入至文件中和导出文件中的镜像至本地;

[root@www ~]# docker save  -o test.file nginx:1.14-alpine
[root@www ~]# docker load -q -i test.file
Loaded image: nginx:1.14-alpine

8.显示容器的详细信息;

[root@www ~]# docker container  ls
CONTAINER ID        IMAGE                 COMMAND              CREATED             STATUS              PORTS               NAMES
6246bc53550b        httpd:2.4.37-alpine   "httpd-foreground"   3 hours ago         Up 18 seconds       80/tcp              httpd1
[root@www ~]# docker inspect httpd1
[{"Id": "6246bc53550bcfa1149f9f51b48a5b992969d3e2eb50df457cb0f06589102a01","Created": "2018-11-20T09:18:58.780749029Z","Path": "httpd-foreground","Args": [],"State": {"Status": "running","Running": true,"Paused": false,"Restarting": false,"OOMKilled": false,"Dead": false,"Pid": 67850,"ExitCode": 0,"Error": "","StartedAt": "2018-11-20T11:50:26.409306755Z","FinishedAt": "2018-11-20T09:40:54.02714799Z"},"Image": "sha256:11fc0c2a2dfa90eb5804742e5b0927c9cacc3664ffde7839dcc6f39e6fd44fcb","ResolvConfPath": "/var/lib/docker/containers/6246bc53550bcfa1149f9f51b48a5b992969d3e2eb50df457cb0f06589102a01/resolv.conf","HostnamePath": "/var/lib/docker/containers/6246bc53550bcfa1149f9f51b48a5b992969d3e2eb50df457cb0f06589102a01/hostname","HostsPath": "/var/lib/docker/containers/6246bc53550bcfa1149f9f51b48a5b992969d3e2eb50df457cb0f06589102a01/hosts","LogPath": "/var/lib/docker/containers/6246bc53550bcfa1149f9f51b48a5b992969d3e2eb50df457cb0f06589102a01/6246bc53550bcfa1149f9f51b48a5b992969d3e2eb50df457cb0f06589102a01-json.log","Name": "/httpd1","RestartCount": 0,"Driver": "overlay2","Platform": "linux","MountLabel": "","ProcessLabel": "","AppArmorProfile": "","ExecIDs": null,"HostConfig": {"Binds": null,"ContainerIDFile": "","LogConfig": {"Type": "json-file","Config": {}},"NetworkMode": "default","PortBindings": {},"RestartPolicy": {"Name": "no","MaximumRetryCount": 0},"AutoRemove": false,"VolumeDriver": "","VolumesFrom": null,"CapAdd": null,"CapDrop": null,"Dns": [],"DnsOptions": [],"DnsSearch": [],"ExtraHosts": null,"GroupAdd": null,"IpcMode": "shareable","Cgroup": "","Links": null,"OomScoreAdj": 0,"PidMode": "","Privileged": false,"PublishAllPorts": false,"ReadonlyRootfs": false,"SecurityOpt": null,"UTSMode": "","UsernsMode": "","ShmSize": 67108864,"Runtime": "runc","ConsoleSize": [0,0],"Isolation": "","CpuShares": 0,"Memory": 0,"NanoCpus": 0,"CgroupParent": "","BlkioWeight": 0,"BlkioWeightDevice": [],"BlkioDeviceReadBps": null,"BlkioDeviceWriteBps": null,"BlkioDeviceReadIOps": null,"BlkioDeviceWriteIOps": null,"CpuPeriod": 0,"CpuQuota": 0,"CpuRealtimePeriod": 0,"CpuRealtimeRuntime": 0,"CpusetCpus": "","CpusetMems": "","Devices": [],"DeviceCgroupRules": null,"DiskQuota": 0,"KernelMemory": 0,"MemoryReservation": 0,"MemorySwap": 0,"MemorySwappiness": null,"OomKillDisable": false,"PidsLimit": 0,"Ulimits": null,"CpuCount": 0,"CpuPercent": 0,"IOMaximumIOps": 0,"IOMaximumBandwidth": 0,"MaskedPaths": ["/proc/acpi","/proc/kcore","/proc/keys","/proc/latency_stats","/proc/timer_list","/proc/timer_stats","/proc/sched_debug","/proc/scsi","/sys/firmware"],"ReadonlyPaths": ["/proc/asound","/proc/bus","/proc/fs","/proc/irq","/proc/sys","/proc/sysrq-trigger"]},"GraphDriver": {"Data": {"LowerDir": "/var/lib/docker/overlay2/02719a1efc3bd4ced5a4692b75468dd4d2d55fa254869cbc26d9487ebea1c5ea-init/diff:/var/lib/docker/overlay2/0403b4e021b6fb5d30d752fa1f8d0dbe7e5b5fae974ddcc3acc8c32fe49e51f8/diff:/var/lib/docker/overlay2/7e600ef93457c34d8423b1fa59037800b630f992ca26b0289106f4bb4edbbda8/diff:/var/lib/docker/overlay2/56de63abd81931dc78929016b95e51e3d74f4702d90af28590b31ad44bd9335e/diff:/var/lib/docker/overlay2/9efe9a470ec8834a8605274fa2b156015bc703c790b429ac13fdd10f19693ccd/diff:/var/lib/docker/overlay2/2cd347e2a7d82ceeb12f18b279dda0fa0853f13ab3149aa0787f3f7c685ba622/diff","MergedDir": "/var/lib/docker/overlay2/02719a1efc3bd4ced5a4692b75468dd4d2d55fa254869cbc26d9487ebea1c5ea/merged","UpperDir": "/var/lib/docker/overlay2/02719a1efc3bd4ced5a4692b75468dd4d2d55fa254869cbc26d9487ebea1c5ea/diff","WorkDir": "/var/lib/docker/overlay2/02719a1efc3bd4ced5a4692b75468dd4d2d55fa254869cbc26d9487ebea1c5ea/work"},"Name": "overlay2"},"Mounts": [],"Config": {"Hostname": "6246bc53550b","Domainname": "","User": "","AttachStdin": true,"AttachStdout": true,"AttachStderr": true,"ExposedPorts": {"80/tcp": {}},"Tty": true,"OpenStdin": true,"StdinOnce": true,"Env": ["PATH=/usr/local/apache2/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","HTTPD_PREFIX=/usr/local/apache2","HTTPD_VERSION=2.4.37","HTTPD_SHA256=3498dc5c6772fac2eb7307dc7963122ffe243b5e806e0be4fb51974ff759d726","HTTPD_PATCHES=","APACHE_DIST_URLS=https://www.apache.org/dyn/closer.cgi?action=download&filename= \thttps://www-us.apache.org/dist/ \thttps://www.apache.org/dist/ \thttps://archive.apache.org/dist/"],"Cmd": ["httpd-foreground"],"ArgsEscaped": true,"Image": "httpd:2.4.37-alpine","Volumes": null,"WorkingDir": "/usr/local/apache2","Entrypoint": null,"OnBuild": null,"Labels": {}},"NetworkSettings": {"Bridge": "","SandboxID": "948daf1d078778001fa043b74a10733c11e215be3a8b457b16a47d8b46f087aa","HairpinMode": false,"LinkLocalIPv6Address": "","LinkLocalIPv6PrefixLen": 0,"Ports": {"80/tcp": null},"SandboxKey": "/var/run/docker/netns/948daf1d0787","SecondaryIPAddresses": null,"SecondaryIPv6Addresses": null,"EndpointID": "a591d3f3fbf35606173c7f121a3e23503d075473d256cae6c55933cf91815172","Gateway": "172.17.0.1","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"IPAddress": "172.17.0.2","IPPrefixLen": 16,"IPv6Gateway": "","MacAddress": "02:42:ac:11:00:02","Networks": {"bridge": {"IPAMConfig": null,"Links": null,"Aliases": null,"NetworkID": "6714eb554a2843bd0582a3e7d63b09b175c5351c100aab08b1a051bc8187cb5c","EndpointID": "a591d3f3fbf35606173c7f121a3e23503d075473d256cae6c55933cf91815172","Gateway": "172.17.0.1","IPAddress": "172.17.0.2","IPPrefixLen": 16,"IPv6Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"MacAddress": "02:42:ac:11:00:02","DriverOpts": null}}}}
]

转载于:https://blog.51cto.com/liujingyu/2319563

Docker基础(2)——基础操作相关推荐

  1. docker镜像管理基础和操作

    #docker镜像管理基础 镜像的概念 镜像可以理解为应用程序的集装箱,而docker用来装卸集装箱. docker镜像含有启动容器所需要的文件系统及其内容,因此,其用于创建并启动容器. docker ...

  2. 啃Docker之必备基础管理操作

    啃Docker之必备基础管理操作 前言 一:环境准备 二:镜像的常规操作 三:容器的常规操作 前言 对于理论可以看我之前的博客 链接: https://blog.csdn.net/m0_4721994 ...

  3. docker介绍+下载+基础操作---ubuntu/centos

    0. 扫盲 1. 各种软件用什么语言写的 - zabbix(监控软件):php - ansible(批量管理主机,执行命令,无angent):python - openstack(云计算,管理虚拟机) ...

  4. Docker入门(基础篇+高级篇)

    Docker 参考手册基础篇+高级篇 一.Docker常用命令 docker run docker stop docker start 进入一个运行中的容器 docker ps docker imag ...

  5. Docker学习之基础篇

    Docker 为什么会出现Docker?(why) Docker容器虚拟化对比传统虚拟机 Docker三大要素 Docker的安装 配置镜像加速器 Run的流程和Docker原理 Docker的常用命 ...

  6. 1.Docker学习之基础知识

    0x00 Docker 快速入门 1.基础介绍 2.Docker 架构 3.Docker 资源隔离 4.Docker 容器文件系统 0x01 Docker 安装 1. Linux 2. Windows ...

  7. docker概念和基础命令

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 ...

  8. 【docker】docker概述及基础入门

    docker概述及基础入门 前言: docker是近年来非常火的一个容器化技术,相比传统的vmware虚拟化技术有着非常大的优势,(vm:小伙子你不讲武德),对于开发人员.测试人员.运维人员,再往上走 ...

  9. Docker、docker安装及基础命令

    Docker是什么? Docker是一个在2013年开源的应用程序,并且是一个基于go语言编写的PAAS服务. Docker最早采用LXC技术,之后改为自己研发并开源的runc技术运行容器. Dock ...

  10. python文件替换一行_python基础_文件操作实现全文或单行替换的方法

    这篇文章主要介绍了关于python基础_文件操作实现全文或单行替换的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 python修改文件时,使用w模式会将原本的文件清空/覆盖.可以 ...

最新文章

  1. 问问题要量化,要具体
  2. C++之------虚函数
  3. 华为上机试---购物单(算法:背包问题)
  4. java8 list 去重_Java8中的Stream,一行代码,让集合操作飞起来
  5. 第 2 章 Readme
  6. python-成都Python课程
  7. winform直接控制云台_大疆DJI RSC2相机云台评测:折叠设计带来更多玩法
  8. 代码记录:易语言中精易模块的json文本数据生成
  9. nginx参数keepalive_timeout
  10. 今世缘前三季考卷:江苏市场贡献超九成,3流通股东减持197.6万股
  11. 快速批量删除新浪微博内容
  12. 电脑直连开发板 (备忘)
  13. 中职 php学啥,中职技校电脑专业主要学什么
  14. java爬虫框架jsoup
  15. jquery缩放手势插件_ZooMove:jQuery插件可在悬停时缩放图像
  16. vc MSChart的使用
  17. 几何公式和定理(初中)一些常用数学公式
  18. 2014健康助手 “马上”享受健康生活
  19. 中科院发布《2019人工智能发展白皮书》,强调人工智能开放平台重要性(结尾附下载)...
  20. 解决 apt / apt-get E: 无法获得锁 E:无法锁定管理目录 11:资源暂时不可用

热门文章

  1. Protocol Buffers 编码原理
  2. golang fmt.Print(15 == 1_5)
  3. 最近的工作生活的心得感悟,给自己的表现打50分,不及格
  4. 面试系列-Memcached面试专题
  5. Hadoop入门基础教程 Hadoop之完全分布式环境搭建
  6. 设计模式---创建型模式
  7. Redis:哨兵模式(针对某一模块,数据量有限)
  8. 关于Zipkin的几个问题
  9. 使用jQuery来实现一个简单的ajax请求
  10. CArray动态数组