caffe 的docker安装过程及相关linux操作总结 (2)

docker rename 原容器名  新容器名    docker tag 41b730702607 opmaster/basic_server:devel //镜像id  ,改新镜像名字和标签

////////////////////////////////////////////////////////////
    #使docker映射到本机host的GUI口来显示,使用nvidia的GPU来创建容器,并提供交互(-it)的bash,设置数据卷来挂载共享数据,并命名容器名

    sudo nvidia-docker run -it \
    > -v /tmp/.X11-unix:/tmp/.X11-unix \
    > -e DISPLAY=unix$DISPLAY \
    > -e GDK_SCALE \
    > -e GDK_DPI_SCALE \
    > -v /home/csj/Desktop/caffe_docker_mnt/:/home/caffe_docker_mnt \
    > --name shijie_caffe_container1 \
    > 1febdeef0276 \
    > /bin/bash

    jupyter notebook --allow-root   #使用jupyter notebook
//////////////////////////////////////////////////////////////////////////////////////////////////////////

    sudo nvidia-docker start   2806cb9d9633
    sudo nvidia-docker exec -it  2806cb9d9633 /bin/bash
    sudo nvidia-docker commit 2806cb9d9633 shijie_image:v1 //保存改动的容器到镜像

    docker commit  -m="First Image"  -a="786389209"  7a15f99695c0   786389209/unbantu:17.10.0 #

    * -m 提交的描述信息

    * -a 指定镜像作者

    sudo nvidia-docker save shijie_image:v1   /home/shijie_docker/shijie_image.tar //保存镜像为 .tar 文件到host本地目录

    sudo nvidia-docker load   -i   file-path

    #注意load和import命令不同,前者导入镜像到本地镜像仓库,后者只是导入一个快照,退出会回滚原始版本。

    rm          #删除一个或多个容器

    rmi         #删除一个或多个镜像


    #登录docker并上传镜像

    docker  login

    docker  push  786389209/unbantu-test:lastest


三、cmake 的介绍

  CMake是一个比make更高级的编译配置工具,它可以根据不同平台、不同的编译器,生成相应的Makefile或者vcproj项目。通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程。CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(make install)、测试安装的程序是否能正确执行(make test,或者ctest)、生成当前平台的安装包(make package)、生成源码包(make package_source)、产生Dashboard显示数据并上传等高级功能,只要在CMakeLists.txt中简单配置,就可以完成很多复杂的功能,包括写测试用例。如果有嵌套目录,子目录下可以有自己的CMakeLists.txt。总之很强大!

    比如Kdevelop中opencv的文件简单的CMakeLists.txt:

cmake_minimum_required(VERSION 2.8) project(opencv) #工程名字 find_package(OpenCV REQUIRED) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") #opencv4必须添加对C++11的支持 add_executable(opencv main.cpp) target_link_libraries(opencv ${OpenCV_LIBS})

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzxjxy.html