转载自Kevin-Tong

Mac Docker入门安装使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010889390/article/details/85020541

最新mac系统千万不要用brew安装,推荐使用官方文档:https://docs.docker.com/docker-for-mac/#proxies

安装镜像:
docker pull centos:latest

   
   
   
   
  • 1

latest代表拉取最新的镜像,当然可以先搜索下

docker search centos

   
   
   
   
  • 1
查看本地镜像库:
tongkun@localhost java (master) $ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              1e1148e4cc2c        9 days ago          202MB

   
   
   
   
  • 1
  • 2
  • 3

在列出信息中,可以看到几个字段信息:

来自于哪个仓库,比如 ubuntu
镜像的标记,比如 16.04
它的 ID 号(唯一),比如e4415b714b62
创建时间
镜像大小

启动镜像:
tongkun@localhost java (master) $ docker run -it centos bash 
[root@fc68ad1849ef /]# 

   
   
   
   
  • 1
  • 2

-it 表示运行在交互模式,是-i -t的缩写,即-it是两个参数:-i和-t。前者表示打开并保持stdout,后者表示分配一个终端(pseudo-tty)一般这个模式就是可以启动bash,然后和容器有命令行的交互

启动镜像后,分配了一个新终端,命令行变为[root@fc68ad1849ef /]#说明启动成功,并且登陆到了根目录

在这里可以随意使用Linux命令了,但是有些命令是没有的,需要手动安装,比如vim,可以使用yum安装,命令:

yum install vim

   
   
   
   
  • 1
退出容器

如果使用exit,命令退出,则容器的状态处于Exit,而不是后台运行。如果想让容器一直运行,而不是停止,可以使用快捷键 ctrl p+q 退出,此时容器的状态为Up

使用exit,然后使用

查看正在运行的容器:docker ps

tongkun@localhost java (master) $ docker run -it centos bash 
[root@c06a8694d372 /]# 
[root@c06a8694d372 /]# exit
exit
tongkun@localhost java (master) $ docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
bd7181bd39ff        centos              "bash"              3 minutes ago       Up 3 minutes                            priceless_goldwasser

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

可以看到,当前有一个id为bd7181bd39ff的容器,image为centos,就是刚刚启动的,如果通过exit退出容器,这里就不会显示了。

启动、停止、重启容器
tongkun@localhost java (master) $ docker stop bd7181bd39ff
bd7181bd39ff
tongkun@localhost java (master) $ docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
tongkun@localhost java (master) $ docker start bd7181bd39ff
bd7181bd39ff
tongkun@localhost java (master) $ docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
bd7181bd39ff        centos              "bash"              6 minutes ago       Up 1 second                             priceless_goldwasser
tongkun@localhost java (master) $ docker restart bd7181bd39ff
bd7181bd39ff
tongkun@localhost java (master) $ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
bd7181bd39ff        centos              "bash"              6 minutes ago       Up 4 seconds                            priceless_goldwasser

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
进入容器attach
tongkun@localhost java (master) $ docker attach bd7181bd39ff
[root@bd7181bd39ff /]# 

   
   
   
   
  • 1
  • 2
安装软件、保存环境

安装vim

[root@bd7181bd39ff /]# yum install vim 
.....
[root@bd7181bd39ff /]# vi  
vi        view      vigr      vim       vimdiff   vimtutor  vipw 

   
   
   
   
  • 1
  • 2
  • 3
  • 4

保存容器,先退出容器,然后commit

tongkun@localhost java (master) $ docker commit -m '安装vim' -a 'tongkun' bd7181bd39ff tongkun/centos:vim
sha256:1dab79502fbda22037e865b81882e073575af4e8a0bd8a0de16989b0ed244e2d

   
   
   
   
  • 1
  • 2

-m指定说明信息;-a指定用户信息;bd7181bd39ff代表容器的id;tongkun/centos:vim指定目标镜像的用户名、仓库名和 tag 信息

查看镜像库,就已经有刚提交的镜像了

tongkun@localhost java (master) $ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED              SIZE
tongkun/centos      vim                 1dab79502fbd        About a minute ago   327MB
centos              latest              1e1148e4cc2c        9 days ago           202MB

   
   
   
   
  • 1
  • 2
  • 3
  • 4

退出现有镜像,启动刚刚commit的镜像,查看安装的vim是否存在

tongkun@localhost java (master) $ docker stop bd7181bd39ff
bd7181bd39ff
tongkun@localhost java (master) $ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
tongkun@localhost java (master) $ docker run -it tongkun/centos bash 
Unable to find image 'tongkun/centos:latest' locally
docker: Error response from daemon: Get https://registry-1.docker.io/v2/: Service Unavailable.
See 'docker run --help'.
tongkun@localhost java (master) $ docker run -it tongkun/centos:vim  bash 
[root@a7880e04c1d4 /]# vi 
vi        view      vigr      vim       vimdiff   vimtutor  vipw  

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

可以看到,这是我们刚刚commit的镜像,有vim命令工具

删除容器或镜像

如果想删除容器或者镜像,可以使用rm命令,注意:删除镜像前必须先删除以此镜像为基础的容器(哪怕是已经停止的容器),否则无法删除该镜像,会报错Failed to remove image (e4415b714b62): Error response from daemon: conflict: unable to delete e4415b714b62 (cannot be forced) - image has dependent child images类似这种。

tongkun@localhost java (master) $ docker ps
CONTAINER ID        IMAGE                COMMAND             CREATED             STATUS              PORTS               NAMES
a7880e04c1d4        tongkun/centos:vim   "bash"              5 minutes ago       Up 5 minutes                            blissful_volhard
tongkun@localhost java (master) $ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tongkun/centos      vim                 1dab79502fbd        10 minutes ago      327MB
centos              latest              1e1148e4cc2c        9 days ago          202MB
tongkun@localhost java (master) $ docker rmi 1dab79502fbd
Error response from daemon: conflict: unable to delete 1dab79502fbd (cannot be forced) - image is being used by running container a7880e04c1d4

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

删除镜像 docker rmi 容器id, 因为此镜像有容器在使用,所以不能被删除,需要先删除容器,删除容器命令docker rm 镜像id,删除之前需要先stop容器,否则也会报错,如下:**Error response from daemon: You cannot remove a running container a7880e04c1d42f6d1f672ac920dd33df552a409cc19029314672643ee18e5836. Stop the container before **

tongkun@localhost java (master) $ docker rm a7880e04c1d4
Error response from daemon: You cannot remove a running container a7880e04c1d42f6d1f672ac920dd33df552a409cc19029314672643ee18e5836. Stop the container before attempting removal or force remove
tongkun@localhost java (master) $ docker stop a7880e04c1d4
a7880e04c1d4
tongkun@localhost java (master) $ docker rm a7880e04c1d4
a7880e04c1d4
tongkun@localhost java (master) $ docker rmi 1dab79502fbd
Untagged: tongkun/centos:vim
Deleted: sha256:1dab79502fbda22037e865b81882e073575af4e8a0bd8a0de16989b0ed244e2d
Deleted: sha256:f6def596fa2f515b28700f4cd3241e0ea78743abe6dad6d2f65bbf945f6dbf15

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Docker push

正所谓“一次提交,到处使用”,我们可以把配置好的Docker push到仓库中,比如 docker hub

先把刚删除的镜像重新弄回来一遍。。。。。

首先到https://hub.docker.com/注册个账号,然后登陆

tongkun@localhost java (master) $ 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: tongkun
Password: 
Login Succeeded

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5

push镜像:

tongkun@localhost java (master) $ docker push tongkun/centos:vim
The push refers to repository [docker.io/tongkun/centos]
15f896816a9b: Pushed 
071d8bd76517: Mounted from library/centos 
vim: digest: sha256:41bdaf55a709080577ccb40f61c0f91275e4a1cb62827a3893b6a5269a619d67 size: 741

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5

push成功之后,到docker hub的仓库中,我们就可以看到自己push上去的镜像了,跟github类似,如图:

转载自Kevin-Tong_第1张图片

pull镜像

当我们在其他地方也需要使用此镜像是,只需要配置好docker,并登陆docker就可以pull已有的镜像了,为了模拟我们先把本地镜像和容器删掉,从仓库中拉取

tongkun@localhost java (master) $ docker stop 133b1f45876f
133b1f45876f
tongkun@localhost java (master) $ docker rm 133b1f45876f
133b1f45876f
tongkun@localhost java (master) $ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
tongkun@localhost java (master) $ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tongkun/centos      vim                 78c5c9cce361        8 minutes ago       327MB
centos              latest              1e1148e4cc2c        9 days ago          202MB
#删除镜像
tongkun@localhost java (master) $ docker rmi 78c5c9cce361
Untagged: tongkun/centos:vim
Untagged: tongkun/centos@sha256:41bdaf55a709080577ccb40f61c0f91275e4a1cb62827a3893b6a5269a619d67
Deleted: sha256:78c5c9cce361122999251ef6ed00d286e4a1af70124a53583e46dbaeb3517879
Deleted: sha256:4b40340dc18b3ef39430f7892e0021af55dcae7f5d76e3b73e0087392f6ca353
tongkun@localhost java (master) $ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              1e1148e4cc2c        9 days ago          202MB
#从仓库中拉取镜像
tongkun@localhost java (master) $ docker pull tongkun/centos:vim 
vim: Pulling from tongkun/centos
a02a4930cb5d: Already exists 
260974091ff8: Pull complete 
Digest: sha256:d57b9eb7123569c3b49279e8211d145b1070656be8aede5f97a0d025fc6ec6ee
Status: Downloaded newer image for tongkun/centos:vim
tongkun@localhost java (master) $ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tongkun/centos      vim                 defbd9f314c9        11 minutes ago      327MB
centos              latest              1e1148e4cc2c        9 days ago          202MB
tongkun@localhost java (master) $ docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
#启动镜像
tongkun@localhost java (master) $ docker run -it tongkun/centos:vim bash 
[root@c42f9f275474 /]# tongkun@localhost java (master) $ 
tongkun@localhost java (master) $ docker ps 
CONTAINER ID        IMAGE                COMMAND             CREATED             STATUS              PORTS               NAMES
c42f9f275474        tongkun/centos:vim   "bash"              11 seconds ago      Up 10 seconds                           frosty_williams

   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
最后来张docker命令图收尾

转载自Kevin-Tong_第2张图片

Mac入门就到这里了,深层次的使用和控制,后面学习再补充~

参考:http://lihuia.com/2018/03/09/docker/

        
阅读更多
程序员 转型首选的编程语言是什么?
好学、好用、高薪的Python学习路线免费领取!


	
  • 上一页
  • 1
  • 下一页

[授权发表]Docker 快速上手:用 Docker + GitBook 写书

04-28 2646

本文介绍了如何用 Docker 快速部署一个书籍创作环境 GitBook。有了Docker+GitBook,原创作者们从此可以用 Markdown 便捷地写作,更专注于内容创作,抛弃繁杂的字体和版式调...

		

mac上下载Docker

在Mac系统上下载Docker有两种方式,一种是下载stable Docker,另一种是…

来自: yzy199391的博客



		

已经安装好Docker 1.13或者以上的版本。
安装好Docker Compose。如果你是用的是Docker for Mac和Docker for Windows,那么不用担心,这是自带的。…

来自: 明月阁



Docker 结构如下


来自: BUPT_WX的专栏



		

Java代码  

publi…

来自: 下雨天__的专栏



		

关键词: Docker; mac; Docker中使用gdb无法进入断点,无法调试;
写在前面
这篇博客适合谁?
对于Docker并不了解,只是有一…

来自: S_gy_Zetrov的博客



		

LXC(Linux Container),能从网络上获得配置好的 L…

来自: Benjamin



		

Docker 是什么
Docker 思想
Docker 应用场景
Docker核心技术
Docker镜像
Docker 容器
Docker仓库
Doc…

来自: QQ小冰



详见 【链接】
一句话,总结很多新人对镜像与容器的”混乱”:

下载的是镜像,运行的是容器。

主要命令

命令
作用
用例
参数

run
启动/…

来自: 子非渔的博客



          
等一杯咖啡关注
等一杯咖啡

115篇文章

排名:千里之外

下雨天_____关注
下雨天_____

335篇文章

排名:7000+

sgyzetrov关注
sgyzetrov

191篇文章

排名:千里之外

Benjamin_whx关注
Benjamin_whx

342篇文章

排名:5000+

RocketMQ 是一款分布式、队列模型的消息中间件,具有以下特点:

Docker for Mac 安装
Docker中安装部署mysql

来自: flyr的专栏



		

I. python

在不同系统下安装python的方式不同

Mac

如果我没记错的话,Mac是自带python的,当然你也可以用Homebrew或其他方式安装一个别的…

来自: itKingOne的博客



安装

Ubuntu Docker 安装

CentOS Docker 安装

Windows Docker 安装

MacOS Docker 安装

这里我的电脑是mac,采用brew安装,安装…

来自: 只有变秃,才能变强



		

sentry是一个强大的分布式报错信息收集平台,图形化程度很高,可以帮助我们直观的发现当前部署的系统存在哪些问题。

1 准备工作

官方提供了两种部署方案

dock…

来自: itKingOne的博客



		


    
		

下载istio最新安装包https://github.com/istio/istio/releases

wget https://github.com/istio/istio/rel…

来自: zhuchuangang的专栏



sudo useradd -g docker docker2. 增加cen…

来自: 一个烂人的随手笔记



			


    
			


    
		

安装Docker(版本最低1.13)。
安装好Docker Compose,上一篇文章介绍过的。


来自: 明月阁



			

|别再错过了|专业资深定制印刷设计在这里! 杭州鼎印 · 顶新
			


    
		


    
		


    
		

接下来按tidb github 主页提示  敲三行命令。

  1. docker pull…

    来自: cocoyan 的技术博客



     		
    
    一插上电,50平米内都暖和了!3天一度电,今日特惠! 威威 · 燨燚
		

于是,决定在自己机器上搞一下。但…

来自: m0_37134214的博客



			

Docker 从入门到实践
Docker 从入门到实践
Docker 从入门到实践


			


    
			


    
			

揭秘:头上长白发竟是身体缺了它?饭后吃点它,白发轻松变黑发! 新至尊 · 燨燚
		

brew search cmake
brew install cma…

来自: xiaokaige198747的专栏



		


    
		


    
		

docker run -d -p 443:443 --name openvas mikesplain/openvas
docker logs openvas -f

 

来自: sakura521yz的专栏



		

docker安装很简单,linux环境下直接yum或者apt在线安装即可,安装后将其以服务的形式运行在系统后台。

C…

来自: 弈心逐梦



		


    
			


    
		

简介

Docker是一种新兴的虚拟化技术,能够一定程度上的代替传统虚拟机。不过,Docker 跟传统的虚拟化方式相比具有众多的优势。我也将Docker类比于Python虚拟…

来自: 等一杯咖啡的博客



			

redis for mac 可视化工具 直接安装使用 不用编译


		

		


    
		

Docker是一种轻量级容器技术,实际中直接运行在当前操作系统(Linux)上,而不是虚拟机中。
PaaS提供了存储,数据库,网络,负载均衡,自动扩展等功能,Docker云…

来自: xiaojiajia123的博客



			


    
		

官网:https://www.jhipster.tech/
文档资料地址点击此链接
一、环境背景:
1.node:8.11.3(当前稳定版)
2.npm…

来自: LoveEmperor_王子様:给我找些更强的敌人!



		

			


    
			


    
		

方法一:(更新时间:2018/4/8)v3.3

注册时,在打开的Lice…

来自: 唐大帅的编程之路



		

转载请标明出处: http://blog.csdn.net/forezp/article/details/70148833
本文出自方志朋的博客

错过了这一篇,你可能再也学不会 Sp…

来自: 方志朋的专栏



		

因公司的需求,需要做一个爬取最近上映的电影、列车号、航班号、机场、车站等信息,所以需要我做一个爬虫…

来自: 昌昌



		


    
		

输入:123456
输出:123656方法1:
把数的百位取出,然后加上和6的差值乘以100…

来自: yi_ming_he的博客



		


    
		


    
		

所有的课程源代码在我上传的资源里面,本来想设置开源,好像不行!博客和专栏同步!

如有错别字或有理解不到位的地方…

来自: 谷子的博客



		

1)打开vscode工具;

2)使用快捷键组合【Ctrl+Shift+p…

来自: 飞扬的博客



		

本人正在找深圳Java实习工作,求大佬带飞
——————————————————————————————————————
消费者从Eure…



		

现在越来越流行在线看视频了,但是对于我得收藏癖爱好者,还是希望可以有比较好的资源网站的,尤其是种子、磁力链网站。所以就整理了一份干净、好用的TOP10出来:

先推荐一个下载磁力链的工具:

马…

来自: YXAPP的技术分享



		

1、简介
Kotlin 是一个用于现代多平台应用的静态编程语言,由 JetBrains 开发。
Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没…

来自: zping0808的博客



		

上一节课我们学习了  颜色与纹理中–彩色三角形

这一节课我们将学习  颜色与纹理中-在图像上贴图片

实…

来自: 谷子的博客



		

这个晚上月光很亮,你泡好一保温杯枸杞养生茶,打开电脑,开始敲代码;茶水的温度刚刚好,你熟练地按下“Ctrl-C + Ctrl-V”……对于泡在代码里的程序员而言,复制粘贴无异于左右护法,很难想想没有…

来自: CSDN资讯



		

用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。今天给大家…

来自: fxbin123的博客



		

如在文档中遇到什么问题请联系作者
——————————————————————————————————————
服务消费者

获…



		

先准备好apk,放到桌面 
看看app有没有加固,如果加固了,逆向起来…

来自: 无聊看风景的博客



		

安装完成,打开Webstorm,在弹出的License Activation窗口中选择“License server”,在输入框输入下面的网址: 

htt…

来自: 老妖儿的博客



		


    
		


    
		

FFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器,提供了录制、转换以及流化音视频的完整解决方案。市面上使…

来自: qq_26464039的博客



		

本人正在找深圳Java实习工作,求大佬带飞
——————————————————————————————————————
八在审核中,请见…



		

ByteBuffer
CharBuffer
ShortBuffer
IntBuffer
LongBuffer
FloatBuffer
DoubleBuffer
2 ByteBuffe…

来自: weixin_43694144的博客



		

下载OTP工具
首先到Office Too…

来自: 过了即是客



		

1
【单选题】我国陆地领土面积排名世界第几?(C)
A、1
B、2
C、3
D、4
2
【单选题】以下哪个国家不属于金砖五国(BRICS)?(B)
A、中国
B、日本
C…

来自: ling_wang的博客



		

在setoption(option)以后添加,就是在js文件最后添加
window.addEventListener(&q…

来自: qq_40388552的博客



		

最新版的Proxyee-down为3.12(2018.10更新),因为作者在3.x后的版本中并未发布exe版…

来自: shadandeajian的博客



		

百度网盘不限速 点击下载 提取码:jsk0
对于大多数人来说,每次在百度网盘下载东西的时候总会被限速,如果不想被限速就要充值百度网盘的SVIP,…

来自: qq_41925894的博客



		

使用传统excel做图…

来自: qq_40388552的博客



		

    可以在官网下载,也可以在我的网盘下载

    链接:https://pan.baidu.com/s/1MreUpYpk5WoGiT8-5NMVVA 密码:kco…

来自: 天狼星的博客



		

上一节课我们学习了  三维空间-不同位置的三角形

这一节课我们将学习  三维空间之加入旋转矩阵的三角形

本案…

来自: 谷子的博客



		

上一节课我们学习了  颜色与纹理中–在图像上贴图片

这一节课我们将学习  三维空间-不同位置的三角形

在学…

来自: 谷子的博客



		

一、元组
1.1、二元元组
data class Pair<out A, out B>(
public val first:…

来自: zping0808的博客



		

本人实锤亲测可用,希望造福广大读者
08-03
http://idea.wrbugtest.tk/
08-06
http://active.china…

来自: 赏樱看雪撸代码



		

DirectX修复工具最新版:DirectX Repair V3.8 增强版  NEW!

版本号:V3.8.0.11638

大小: 107MB/7z格式压缩,18…

来自: VBcom的专栏



		

输入数列: 1 2 4 5…

来自: yi_ming_he的博客



		

智慧树刷课插件获取方法:微信关注公众号(jiutu2019)后,后台回复“智慧树刷课插件”即可获取。



来自: 柠檬很酸的博客



		

1
【单选题】中国哪个历史时期的国防是“变法图强,改革军制;奖赏军功,百家论兵”?()
A、元朝时期
B、先秦时期
C、清朝时期


来自: ling_wang的博客



		

csdn的兄弟们看…

来自: qq_36556893的博客



		


    


        

没有更多推荐了,返回首页

你可能感兴趣的:(转载自Kevin-Tong)