zoukankan      html  css  js  c++  java
  • Docker学习笔记

    推荐阮一峰老师的Docker入门教程

    安装

    镜像(image)

    镜像相关的命令,采取规范的格式比较容易记忆:

    docker image ls
    docker image rm [image_name]
    docker image pull [image_name]
    docker image build -t [image_name] [dockerfile_path]
    

    容器(container)

    同样的,容器相关命令的规范形式:

    docker container ls            # 列出正在运行的容器
    docker container ls --all      # 列出所有容器,包括停止终止的
    docker container kill [container_id]
    docker container rm [container_id]
    docker container run [-it] [-p xxx:xxx] [image_name] [script]
    

    其他

    因为使用集群的镜像,不能随意修改更新镜像,有诸多限制。部分曲线救国的方法:

    获取容器内的root权限

    首先你的container得正在运行
    可通过sudo docker container ls或者sudo docker ps查看容器的CONTAINER ID
    最后执行命令(其中7509371edd48 为上面查到的CONTAINER ID)

    sudo docker exec -it -u root 7509371edd48 bash
    

    更换容器内软件的版本

    比如说更新cmake的版本。
    看了看PATH中包含/usr/local/bin目录,而此目录下为空,我们可以将外部的软件(或符号链接)目录直接挂载为该目录,这样系统在查找相应的软件时,可以使用我们自己挂载的版本。

    无sudo权限以及非root的用户apt安装软件

    虽然通过前面的方法可以获取容器的root权限,但注意在容器内做出的修改并不能保存。
    因为apt-get install不能指定安装路径,我们直接使用apt-get安装的软件在容器退出之后不能留存,下次启动容器仍然无法使用。
    而通过源码方式安装的软件,可以指定其安装路径。
    因此我们可以先安装到自己的目录下,然后将安装目录挂载为系统PATH中的目录,这样就可以使用该软件了。

  • 相关阅读:
    【11_83】Remove Duplicates from Sorted List
    【10_169】Majority Element
    【09_242】Valid Anagram
    【08_238】Product of Array Except Self
    【07_226】Invert Binary Tree
    【6_100】Same Tree
    【5_283】Move Zeroes
    【4_237】Delete Node in a Linked List
    mysql性能优化-慢查询分析、优化索引和配置
    生成商品条形码代码事例
  • 原文地址:https://www.cnblogs.com/tofengz/p/13520439.html
Copyright © 2011-2022 走看看