怎么添加在安装好的nvidia-docker上面根据Dockerfile构建自己所需要的运行环境
在已经创建好nvidia-docker环境之后,对于新手小白来说,又有一个问题了,就是如何根据Dockerfile来构建试验所需要的docker环境
主要是以下几个步骤
首先创建一个mydocker文件夹
sudo mkdir mydocker
由于我是服务器上的普通用户,通过su然后输入密码才可以使用sudo命令,因此就出现一个问题:生成的mydocker文件夹是上锁的
如图所示,刚开始尝试普通用户的方式将Dockerfile移到mydocker中去
首先到mydocer所在的路径
cd mydocker
然后把Dockerfile拖进去
出现的问题:对于mydocker是通过管理员权限来生成的,所以对其没有访问权限,因此只能通过命令来对其实现拷贝
通过命令
sudo cp Dockerfile mydocker
实现对其的拷贝,点进去文件夹里面看,拷贝成功
然后构建代码所需要的环境
docker build -f mydocker/Dockerfile -t my docker:1.01 .
在这里一定要注意最后的点一定要加,并且一定要空格,我刚开始的时候没有空格倒腾了好久
输入之后,如果看到是在下载很多东西,那么就证明你构建成功啦
最后一步,在你将这个镜像文件生成之后,把mydocker文件夹里的Dockerfile复制到之前生成的docker_image文件夹中并将mydocker文件夹删除,然后输入下列代码
nvidia-docker run --rm -it -v HOST_FOLDER:/share DOCKER_IMAGE bash
对于这段代码的意义是:这个镜像运行之后会生成一个新的环境,可以理解为一个小的linux系统,这个系统包含了我们所需要的实验环境,:/share代表你新生成环境的主目录,HOST_FOLDER代表你要将现在的主机的某个目录也就是宿主机的某个目录挂载/share下,就像你把u盘挂到某个目录一样,这样你才可以在新的环境访问你主机上的文件,要注意的是HOST_FOLDER要写成绝对路径,DOCKER_IMAGE可以通过docker images命令来看生成的镜像环境名称及版本号
要查看电脑所构建的镜像环境
docker images
如果要在最后生成的环境中再安装一些其他的包什么,可以直接在内部安装,只是在最后退出的时候记得输入以下指令:
sudo docker commit b58cb49f882d mydocker:1.01
需要注意的是,b58cb49f882d并不是固定的,每次运行时都不一样,就是在你运行时root之后
怎么添加在安装好的nvidia-docker上面根据Dockerfile构建自己所需要的运行环境的更多相关文章
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
Docker学习笔记之一,搭建一个JAVA Tomcat运行环境 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序 ...
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境(转)
前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装.部署和升级,非常 ...
- [转]Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
本文转自:http://www.blogjava.net/yongboy/archive/2013/12/12/407498.html 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 ...
- Docker 实战—使用 Dockerfile 构建镜像
Dockerfile 指令详解请访问:https://www.cnblogs.com/cloudfloating/p/11737447.html 使用 Alpine Linux 作为基础镜像 Alpi ...
- docker(四) 使用Dockerfile构建镜像
下面以一个例子来演示构建镜像的过程. #在/tmp目录下演示 cd tmp mkdir build-redis-image 1.创建Dockerfile文件 vim Dockerfile 并写入如下内 ...
- Docker学习(12) Dockerfile构建过程
Dockerfile的构建过程 以上为构建缓存
- Docker:使用Jenkins构建Docker镜像
Docker 彭东稳 1年前 (2016-12-27) 10709次浏览 已收录 0个评论 一.介绍Jenkins Jenkins是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从 ...
- docker 和 vagrant 作为程序发布 和 开发的独立而统一的运行环境
docker 和 vagrant 作为程序发布 和 开发的运行环境,可以提供打包程序,并使得程序运行在一个独立的虚拟环境中,避免程序发布到客户机之后,环境不一致导致的诸多问题. refer: ...
- centos7 安装 NVIDIA Docker
安装环境: 1.centos7.3 2.NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] 安装nvidia-docker a.安装docker 可参考ce ...
随机推荐
- 06 入门 - Web服务器
目录索引:<ASP.NET MVC 5 高级编程>学习笔记 开发和调试ASP.NET MVC程序,需要Web服务器的支持. Visual Studio 2012+开发环境提供了两种Web服 ...
- jquery之冒泡事件介绍以及阻止冒泡
什么是事件冒泡 <div style="width: 200px;height: 200px;background: red;margin: 200px auto;" onc ...
- 原生 table css实现操作按钮固定右侧及底部滚动 IE不会卡死
需求的表格比较复杂(各种合并新增删除),elementUi的table组件无法满足需求,故而写了原生table,且与其他用了table组件的表格保持一致. 贴一下简单的代码,只实现操作按钮固定右侧以及 ...
- 第三次上机,ADO接口的使用
<html> <head> <title>Reg</title> </head> <body><center> &l ...
- 时空地图TimeGIS.com生成正交曲线网格
数值模拟中对数学物理方程的求解过程中经常需要生成网格,这里提供了一种方便的方法,只需要简单地勾画出区域的轮廓, 就可以生成相应的正交曲线网格,详情请访问 www.TimeGIS.com
- C# 利用位运算传递多个参数方法
前言 在工作中用sendMessage的方法向另外一个进程中传递窗体的位置,长度,宽度四个值,但是sendMessage的方法签名中只有两个参数.于是在网上找到了一些代码,找到了这个利用位运算来合并参 ...
- (办公)mybatis工作中常见的问题(不定时更新)
1.mybatis的like查询的方式. <if test="shopName != null and shopName != ''"> <bind name=& ...
- Docker + Sonarqube 环境搭建
Sonar概述 Sonar 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具. 一,postgres 数据库下载 docker pul ...
- vcenter 忘记 administrator@vsphere.local 密码怎么办
现有一个windows版本的vcenter5.5管理员密码丢失,我们可以使用vmware的工具vdcadmintool,在命令行进入到vdcadmintool所在的目录,然后执行下vdcadminto ...
- 当锚点遇到fixed
问题:页面内容导航fixed+锚点错位 solution: 锚点定位跟外边距没有关系. 我们使用内边距padding-top=fixed导航高度来使锚点可以精准定位: 此时新的问题产生了,内边距的存在 ...