Ubuntu 18.04 Docker 命令

一、查看Docker IP

  1. 进入Docker  
    l@l-VirtualBox:~/sdk-XXXX-docker/XXXX-Linux-SDK-<Version>/sdk/SDK-Docker-XXXX-<Version>$sudo ./run_docker.sh 
    XXXXX-sdk-fad-<Version>
    ...
    sdk docker img: XXXX-sdk-XXXX-2.3.0.4.tar
    start load sdk version image...
    current version: <Version>
    XXXXX-sdk-XXXX      <Version>             30e4166e0b27        2 weeks ago         10.2GB
    c933f9eacbac        XXXXX-sdk-XXXX:<Version>   "bash"              22 minutes ago      Up 22 minutes       0.0.0.0:212->22/tcp   XXXX-sdk-XXXX
    the sdk docker img : XXXX-sdk-XXXX-<Version> is running
    Duplicate containers exist in the current environment, confirm that the container is retained: XXXX-sdk-XXXX-<Version>, and input [Y/n]: Y

    注:最后一行,一定要输入“Y”

  2. 获取IP
    root@c933f9eacbac:/home# cat /etc/hosts
    127.0.0.1    localhost
    ::1    localhost ip6-localhost ip6-loopback
    fe00::0    ip6-localnet
    ff00::0    ip6-mcastprefix
    ff02::1    ip6-allnodes
    ff02::2    ip6-allrouters
    172.17.0.2    c933f9eacbac

    Ip地址:172.17.0.2

二、保存修改到Docker

  1. 记下Docker 名称、ID以及Version
    $ sudo ./run_docker.sh 
    XXXX-sdk-XXXX-<Version>
    ...
    root@73cdb10022d1:/home# 

    名称:XXXX-sdk-XXXX

    版本:<Version>

    ID:73cdb10022d1

    或者:

    $ sudo docker ps
    CONTAINER ID        IMAGE                    COMMAND             CREATED             STATUS              PORTS                 NAMES
    73cdb10022d1        XXXX-sdk-XXXX:<Version>   "bash"              3 minutes ago       Up 3 minutes        0.0.0.0:212->22/tcp   XXXX-sdk-XXXX-<Version>

     注:ID随着每次Docker的运行,都会变动!!!

  2. 保存Docker修改
    1. 增加修改
      $ sudo ./run_docker.sh 
      XXXX-sdk-XXXX-<Version>
      ...
      root@94f2cf3ac31f:/home# vim test.txt
      root@94f2cf3ac31f:/home# ll
      total 16
      drwxr-xr-x 1 root root 4096 Apr 23 02:15 ./
      drwxr-xr-x 1 root root 4096 Apr 23 02:15 ../
      -rw-r--r-- 1 root root    5 Apr 23 02:05 a.txt
      -rw-r--r-- 1 root root    5 Apr 23 02:15 test.txt
      root@94f2cf3ac31f:/home# exit
      exit

      新增加文件test.txt,然后退出Docker。

    2. 保存Docker修改
      $ sudo docker commit -a "JerryLiu" -m "add new filetest" 94f2cf3ac31f XXXX-sdk-XXXX:<Version>
      sha256:ec135e46f205932f631b982ad9d770b5d9bf6cb8b2f3ae3ec942d49c4bda79a7
      
      $ sudo docker images | grep XXXX-sdk-XXXX
      XXXX-sdk-XXXX      <Version>             ec135e46f205        25 seconds ago      10.2GB

      命令:

      sudo docker commit -a <提交者姓名> -m <注释> <ID> <Docker名称>:<Version>

      注:Docker名称一定要跟你在上面的Docker名称一样,否则,后面需要启动你自己新定义的Docker,原来的Docker不会有任何修改!!!

      比如:

      $ sudo docker commit -a "JerryLiu" -m "add new filetest" 94f2cf3ac31f XXXX-sdk:<Version>
      sha256:ec135e46f205932f631b982ad9d770b5d9bf6cb8b2f3ae3ec942d49c4bda79a7

      我把保存的Docker名称写成:XXXX-sdk,那么,我查看的时候:

      $ sudo docker images
      REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
      XXXX-sdk-XXXX      <Version>             ec135e46f205        7 minutes ago       10.2GB
      XXXX-sdk           <Version>             f4c35c69ae47        33 minutes ago      10.2GB

      有两个Docker,只有启动XXXX-sdk才有修改,启动XXXX-sdk-XXXX是没有修改的。

  3. 运行修改后的Docker
    $ sudo ./run_docker.sh 
    XXXX-sdk-XXXX
    ...
    root@1723fd0f96a9:/home# ll
    total 12
    drwxr-xr-x 1 root root 4096 Apr 23 02:18 ./
    drwxr-xr-x 1 root root 4096 Apr 23 02:18 ../
    -rw-r--r-- 1 root root    5 Apr 23 02:15 test.txt
    root@1723fd0f96a9:/home# 

    运行Docker之后,新增加的test.txt仍然存在,说明保存成功。

三、删除Docker Image

$ sudo docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
XXXX-sdk-XXXX      <Version>             ec135e46f205        15 minutes ago      10.2GB
<none>              <none>              983f086a347d        About an hour ago   10.2GB
$ sudo docker rmi -f 983f086a347d
Deleted: sha256:983f086a347dd6000bd012900cedfea3d3ff461f0754ad7af1d6201561c4caed
Deleted: sha256:6dd45eee9f7f32bec1c1d2ed683b4e31083858ed19e57fe08003e9ca65dc3950
$ sudo docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
XXXX-sdk-XXXX      <Version>             ec135e46f205        15 minutes ago      10.2GB

  sudo docker rmi -f  <IMAGE ID>

四、映射

docker container run -v /home/l/workspace/:/home/workspace/

docker container run -v 本地目录:Docker目录

五、查看so库类型

root@ubuntu:/path/to/folder# objdump -f libtest.so
libtest.so: file format elf32-little

root@ubuntu:/path/to/folder# objdump -f libtest.so
libtest.so: file format elf64-x86-64

带有“x86”的为x86库,否则为arm库。

 

posted @ 2023-05-22 10:27  一条名叫西西的狗  阅读(142)  评论(0)    收藏  举报