Docker (1) --- Начало работы с докером

Docker

что такое докер

Вот несколько простых предложений, чтобы описать, что делает докер.

  • Docker — это инструмент, который может создавать, управлятьконтейнерс вещами. Можно понять, что в докере хранится многоконтейнер.
  • контейнерЭто упрощенная версия системы linux, эта система имеет только базовую среду для использования, и в ней можно запускать программы (это может быть mysql, nginx, redis и т.д.).
  • контейнерСоздание зависит отзеркалоиз,зеркалоМожно рассматривать как шаблон, докер может генерировать экземпляр контейнера на основе образа, если вам нуженконтейнерПоместите в него mysql, затем перейдите в докерзеркалоСклад тянет mysqlзеркало(версия может быть указана), то докер может быть основан на этомзеркалосоздать mysqlконтейнер, так что вы можете использовать систему только с mysql для запуска в докере.
  • контейнерСуществование mysql позволяет нам делать многие вещи, например, для запуска проекта требуется среда mysql и nginx, а mysql и nginx могут быть созданы напрямую.контейнерДля использования в проекте нет необходимости загружать, устанавливать и настраивать эти среды на сервере.контейнерЭти обязательные элементы уже включены внутрь. в то же времяконтейнерЕго также можно легко портировать, например, нам нужно переключать серверы, эти проекты используютконтейнерЕго можно запаковать и увезти прямо на другой сервер.

установка докера

  • Если на машине установлен докер, сначала удалите старую версию.

    $ sudo yum remove docker \
                      docker-client \
                      docker-client-latest \
                      docker-common \
                      docker-latest \
                      docker-latest-logrotate \
                      docker-logrotate \
                      docker-engine
    
  • Установить с помощью репозитория

    Перед первой установкой Docker Engine на новый хост необходимо настроить репозиторий Docker. После этого вы можете установить и обновить Docker из репозитория.

    Установитьyum-utilsпакет (при условииyum-config-managerутилита) и установитестабильныйрепозиторий.

    $ sudo yum install -y yum-utils
    
    $ sudo yum-config-manager \
        --add-repo \
        https://download.docker.com/linux/centos/docker-ce.repo
    
  • После завершения установки выполните следующую команду, чтобы убедиться, что установка прошла успешно.

$ docker version
# 或者
$ docker info

Hello Word

Например, теперь вам нужен nginx, сначала выполните

docker pull nginx  # 默认最新版,如果需要指定版本,直接 nginx:version

После успешного извлечения вы можете использоватьdocker imagesПроверять

[root@izbp109k5j3dul0ejalpf5z html]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              4571e56e27f0        2 days ago          132MB

затем запустите контейнер

[root@izbp109k5j3dul0ejalpf5z html]# docker run nginx		# 启动nginx容器

Просмотр контейнера после успешного запускаdockers ps

容器

Общие команды докера

  • Просмотр информации о контейнере

    ##查看docker容器版本
    docker version
    ##查看docker容器信息
    docker info
    ##查看docker容器帮助
    docker --help
    
  • Список зеркальной операции

    ##列出本地images
    docker images
    ##含中间映像层
    docker images -a
    
    ##下载Redis官方最新镜像,相当于:docker pull redis:latest
    docker pull redis
    ##下载仓库所有Redis镜像
    docker pull -a redis
    
    ##单个镜像删除,相当于:docker rmi redis:latest
    docker rmi redis
    ##强制删除(针对基于镜像有运行的容器进程)
    docker rmi -f redis
    ##多个镜像删除,不同镜像间以空格间隔
    docker rmi -f redis tomcat nginx
    ##删除本地全部镜像
    docker rmi -f $(docker images -q)
    
  • контейнерная операция

    ##新建并启动容器,参数:-i  以交互模式运行容器;-t  为容器重新分配一个伪输入终端;--name  为容器指定一个名称
    docker run -i -t --name mycentos
    ##后台启动容器,参数:-d  已守护方式启动容器
    docker run -d mycentos
    
    ##启动一个或多个已经被停止的容器
    docker start redis
    ##重启容器
    docker restart redis
    
    ##进入容器
    docker exec -i -t  centos /bin/bash
    
    ##查看正在运行的容器
    docker ps
    ##查看正在运行的容器的ID
    docker ps -q
    ##查看正在运行+历史运行过的容器
    docker ps -a
    ##显示运行容器总文件大小
    docker ps -s
    
    ##停止一个运行中的容器
    docker stop redis
    ##杀掉一个运行中的容器
    docker kill redis
    ##删除一个已停止的容器
    docker rm redis
    ##删除一个运行中的容器
    docker rm -f redis
    ##删除多个容器
    docker rm -f $(docker ps -a -q)
    docker ps -a -q | xargs docker rm
    ## -l 移除容器间的网络连接,连接名为 db
    docker rm -l db 
    ## -v 删除容器,并删除容器挂载的数据卷
    docker rm -v redis