docker常用命令

搜索docker映像

$ docker search ubuntu
NAME                                                      DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
ubuntu                                                    Ubuntu is a Debian-based Linux operating sys…   7265                [OK]
dorowu/ubuntu-desktop-lxde-vnc                            Ubuntu with openssh-server and NoVNC            161                                     [OK]
rastasheep/ubuntu-sshd                                    Dockerized SSH service, built on top of offi…   130                                     [OK]
ansible/ubuntu14.04-ansible                               Ubuntu 14.04 LTS with ansible                   90                                      [OK]
ubuntu-upstart                                            Upstart is an event-based replacement for th…   81                  [OK]
neurodebian                                               NeuroDebian provides neuroscience research s…   43                  [OK]
ubuntu-debootstrap                                        debootstrap --variant=minbase --components=m…   35                  [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5      ubuntu-16-nginx-php-phpmyadmin-mysql-5          25                                      [OK]
nuagebec/ubuntu                                           Simple always updated Ubuntu docker images w…   22                                      [OK]
tutum/ubuntu                                              Simple Ubuntu docker images with SSH access     18
ppc64le/ubuntu                                            Ubuntu is a Debian-based Linux operating sys…   11
i386/ubuntu                                               Ubuntu is a Debian-based Linux operating sys…   9
1and1internet/ubuntu-16-apache-php-7.0                    ubuntu-16-apache-php-7.0                        6                                       [OK]
darksheer/ubuntu                                          Base Ubuntu Image -- Updated hourly             3                                       [OK]
codenvy/ubuntu_jdk8                                       Ubuntu, JDK8, Maven 3, git, curl, nmap, mc, …   3                                       [OK]
1and1internet/ubuntu-16-apache                            ubuntu-16-apache                                3                                       [OK]
1and1internet/ubuntu-16-nginx-php-5.6-wordpress-4         ubuntu-16-nginx-php-5.6-wordpress-4             2                                       [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mariadb-10   ubuntu-16-nginx-php-phpmyadmin-mariadb-10       2                                       [OK]
1and1internet/ubuntu-16-nginx                             ubuntu-16-nginx                                 2                                       [OK]
pivotaldata/ubuntu                                        A quick freshening-up of the base Ubuntu doc…   1
pivotaldata/ubuntu-gpdb-dev                               Ubuntu images for GPDB development              0
1and1internet/ubuntu-16-sshd                              ubuntu-16-sshd                                  0                                       [OK]
smartentry/ubuntu                                         ubuntu with smartentry                          0                                       [OK]
ossobv/ubuntu                                             Custom ubuntu image from scratch (based on o…   0
1and1internet/ubuntu-16-healthcheck                       ubuntu-16-healthcheck                           0                                       [OK]

下载一个映像(image)

docker pull ubuntu

如果想下载特定版本,需要加:14.04

docker pull ubuntu:14.04

运行映像

运行映像就会得到一个容器(Container)

docker run ubuntu /bin/echo "haha"

运行映像并得到一个终端

docker run -i -t ubuntu /bin/bash

-t:在新容器内指定一个伪终端或终端。
-i:允许你对容器内的标准输入 (STDIN) 进行交互。

使用docker运行交互式的python

首先要有python,如python:3.5

docker pull python:3.5

然后运行, 可以进入交互环境
docker run -i -t python:3.5 python
前面的python是image的名字,后面的是python
这样就会进入python交互状态。

运行py文件

一个需要知道的概念是, docker容器不能持久的保存文件,退出就会消失。
所以,需要将本地的一个文件夹绑定到docker中的系统里。

  • 建立一个目录mydir
  • 放入一个helloworld.py到mydir中,内容为 print("hah")
  • 执行以下命令

docker run -v $PWD/mydir:/home/myapp -w /home/myapp python:3.5 python helloworld.py

其中$PWD为当前目录。 -v 是将当前目录的mydir文件,映射到 /home/myapp目录。 -w 是制定当前目录。 这个命令中是将自己映射的myapp设为当前目录。 随后执行python helloworld.py命令。

你可能感兴趣的:(docker常用命令)