docker在mac上配置并建立后台容器
来源:互联网 发布:手机装修画图软件 编辑:程序博客网 时间:2024/05/17 22:53
1. 首先需要去官网上下载并安装docker
https://docs.docker.com/mac/step_one/
步骤很简单。
2. 启动docker
启动docker有多种方法,可以在launchpad里用quickstart terminal。
也可以在命令行里使用
eval $(docker-machine env default)
从而将docker启动起来
3. 下载镜像
这里我为了跑tensorflow用的 tensorflow官方教程中提供的一个镜像。
docker run -it b.gcr.io/tensorflow/tensorflow
如果翻墙了,用以上命令就可以自动下载镜像并存在本地
但是注意,这里面的镜像环境很不全,是ubuntu系统。
如果翻不了墙 就只好下载一个了 http://7xlgth.com1.z0.glb.clouddn.com/tensorflow.tar
然后使用
docker load < ~/Downloads/tensorflow.tar 进行导入
4. 使用镜像
docker run -it b.gcr.io/tensorflow/tensorflow 即可进入镜像
但是exit再进入,镜像就会恢复原貌, 所以进行改动如果想保存就必须使用docker commit
如docker commit d54a97f5ccf1 b.gcr.io/tensorflow/tensorflow
中间的16进制字符串 是容器ID
可以用docker ps 看到
5. 建立后台运行的镜像
如果光使用docker run -it 这样的方式运行镜像,会有一个问题
我们要是一不小心exit了,工作就白做了,每次退出前都得去commit也挺麻烦
所以需要建立一个后台一直运行的镜像
首先需要给自己的镜像装好ssh
1)、启动一个docker容器
# docker run -t -i b.gcr.io/tensorflow/tensorflow /bin/bash
2)、然后在容器里,安装openssh-server openssh-client
有的镜像里的apt-get很老,所以我们先升级apt-get
# apt-get update
# apt-get install openssh-server openssh-client
3)、完成之后,修改root密码
# passwd
4)、退出容器,并保存以上修改
# docker commit 3ea7a99a0025 mytensorflow
5
查看容器id
# docker ps -a
查看镜像列表
# docker images
6、用刚保存的镜像,后台启动一个新的容器
docker run --name [image-name] -i -t -p 32776:22 [image-id]
例: # docker run -d -p 32776:22 mytensorflow /etc/init.d/ssh start -D
注意/etc/init.d/ssh start -D , 是保证机器能运行在后台的一个命令
看到网上有人使用了/usr/sbin/sshd -D, 我使用了没法在后台保持运行,可能跟镜像也有关系
7、ssh远程登录该容器
# ssh root@localhost -p 32776
或者使用 docker exec
如 docker exec -it a3b9849b3929 /bin/bash
需要注意的是mac的docker是run在虚拟机里的
所以使用ssh远程登录的话,要么将虚拟机的端口映射回来,要么用docker-machine ssh default 进入虚拟机然后ssh
而docker exec的话可以不用这样,在本地也可以使用
- docker在mac上配置并建立后台容器
- 在MAC上安装docker并部署oracle12.2
- 在mac上配置自带svn并配置versions
- 在MAC平台上编译GLFW并配置到Xcode
- 在Mac OS上Build、配置并使用LLVM
- docker 容器后台运行
- Mac下安装docker 并配置caffe
- Docker实践 - 安装Docker并在容器里运行tomcat
- Docker实践-安装Docker并在容器里运行tomcat
- 在 Docker 上配置 Oracle
- 在MAC服务器上搭建docker-registry
- 怎样在mac上彻底删除docker
- 在Mac OS上安装Docker
- docker在Mac上的安装教程
- Docker使用Link在容器之间建立连接
- Docker使用Link在容器之间建立连接
- Docker使用Link在容器之间建立连接
- Docker使用Link在容器之间建立连接
- Kubernetes基本术语与架构
- Android -- RxJava 详解
- JavaScript学习笔记——操作符
- 【xcode插件介绍】Alcatraz
- JVM bind的集中解决方法
- docker在mac上配置并建立后台容器
- svn忽略不需要的文件,只提交代码文件的方法
- pulltorefresh(二)的自定义属性介绍、attrs文件介绍
- 重新调用drawRect方法
- JQuery_JQuery选择器(:nth-child(n))详解
- NSUserDefaults单例
- AndroidStudio(2.0 Beta 6) 如何将新建的工程放到Git@osc上
- Docker Swarm学习教程
- MYBATIS 无效的列类型: 1111