欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker基本命令

程序员文章站 2022-03-30 10:42:10
...

[TOC]

docker的启动

启动

        systemctl start docker
      

停止

        systemctl stop docker
      

查看状态

        systemctl status docker
      

docker的镜像

查看本地镜像

        docker images
      

搜索网上镜像

        docker search centos7
      

拉取镜像

默认拉取最新的镜像版本

        docker pull centos:7
      

删除镜像

删除单个镜像

        docke rmi centos
      

or

        docker rmi [id]
      

删除所有镜像

        docker rmi `docker images -q`
      

查看&创建并启动交互式容器

容器是基于镜像运行

什么是交互式容器

容器启动之后会直接进入容器的命令行终端,如果退出则容器停止运行

查看正在运行的容器

        docker ps
      

查看所以容器

        docker ps -a
      

创建并启动交互式容器

        docker run -it -name=mycentos7 centos:7 /bin/bash
      

创建并启动守护式容器

  • 可以在后台一直运行的
  • 即使进入容器后执行exit也不会停止容器
  • 适用于需要长期运行容器的情况(eg:数据库)

创建并启动守护式容器

        docker run -di --name=mycentos2 centos:7
      

进入容器

        docker exec -it mycentos2 /bin/bash
      

停止&拷贝&挂载&查看ip&删除容器

启动容器

docker start [容器名字]

        docker start mycentos2
      

停止容器

docker stop [容器名字]

        docker stop mycentos2
      

拷贝文件

都是在本机的cmd下 本机到docker容器

        docker cp abc.txt mycentos2:/
      

拷贝到根目录

docker容器到本机

        docker cp mycentos2:/cba.txt /root
      

目录挂载

可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件进而影响容器

  1. 宿主机创建一个文件夹:mkdir /usr/local/test
  2. 宿主机的test目录挂载到容器的test目录:docker run -di -v /usr/local/test:/usr/local/test --name=mycentos3 centos:7

查看容器ip

        docker inspect mycentos3
      

mysql容器部署

搜索mysql镜像

        docker search mysql
      

拉取mysql镜像

        docker pull centos/mysql-57-centos7
      

创建容器

        docker run -di --name=mysql5.7 -p 3306:3306 MYSQL_ROOT_PASSWORD=root centos/mysql-57-centos7
      

docker-compose简介&安装

概念

Compose项目时候Docker官方的开源项目,负责实现Docker容器集群的快速编排,它是一个定义和运行多荣提起的docker应用工具,使用compose,你能通过YMAL文件配置你自己的服务,然后通过一个命令,你能使用配置文件创建和运行所有的服务。

组成

  • 服务
  • 项目
  • 容器

默认配置文件为docker-compose.yml

可以同时启动容器和容器间的关系

迁移与备份

docker基本命令


涉及到的命令有:

  • docker commit 将容器保存为镜像
  • docker save 将镜像备份为tar文件
  • docker load 根据tar文件恢复为镜像

将一个容器保存为一个镜像

docker commit [容器名] [制作的镜像名]

        docker  commit mynginx mynginx
      

镜像备份为tar文件

        docker sava -o mynginx.tar mynginx
      

根据tar文件恢复为镜像

        docker load -i mynginx.tar
      

这样就相当于从线上库中拉去了一个镜像

很类似于操作系统的备份,然后在另一台电脑上恢复

dockerfile文件

dockerfile是一个文本文件,由一系列命令和参数构成,docker可以读取dockerfile文件并根据dockerfile文件的描述来构造镜像

就用命令来代替手动的操作

dockerfile文件内容:

  • 基础镜像信息
  • 维护者信息
  • 镜像操作命令
  • 容器启动时执行的指令

使用dockerfile创建镜像

步骤:

  1. 拉取centos7镜像
  2. 上传jdk1.8
  3. 编写dockerfile文件
  4. 构建镜像 (docker build -t='jdk1.8')
  5. 测试(基于新镜像创建并运行容器,运行java -version

具体步骤未记录.....