[docker]个人学习笔记

Docker基础概念

Docker 是一个开源的应用容器引擎,基于GO语言并遵从 Apache2.0 协议开源,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。

Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。

Docker 包括三个基本概念:

镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。镜像是一种轻量级, 可执行的独立软件包, 用来打包软件运行环境和基于运行环境开发的软件, 它包含运行某个软件所需的所有内容, 包括代码, 运行式, 库, 环境变量和配置文件。

容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

Docker常用指令

docker version 查看docker版本

docker search 查找镜像

docker pull 拉取镜像

docker image 查看下载的镜像

docker run 运行镜像创建容器

docker stop 停止容器

docker rm 删除容器

docker rmi 删除镜像

docker tag 给镜像自定义tagname

docker ps 查看正在运行的容器

docker ps –a 查看全部容器

docker inspect 容器ID | grep IPAddress 查看容器IP

docker exec -it 容器ID /bin/bash 进入容器

docker exec -it 容器ID -u root /bin/bash 以root权限进入容器

docker save –o 保存镜像为.tar 文档

docker load –i 读取.tar文档为镜像

docker logs 查看容器日志

docker logs -f --tail=10 容器ID 查看最近10条日志并实时刷新

docker image inspect redis:latest | grep -i version 查看latest版本镜像的具体版本号

docker run启动容器指令

docker run --name wpsiis_mysql 

–p 3306:3306 

–e MYSQL_ROOT_PASSWORD=123456 

–v /home/wpsiis/mysql:/var/lib/mysql 

–d mysql:latest

–name 自定义容器名

-p 端口映射,如8080:80,从主机8080端口映射到容器内部80端口

-e 配置预设

-v 挂载,将主机地址挂载到容器内部,实现数据持久化

-d 守护进程(daemon),后台启动

dockerfile

在Docker中创建镜像最常用的方式,就是使用Dockerfile。Dockerfile是一个Docker镜像的描述文件,我们可以理解成火箭发射的A、B、C、D…的步骤。Dockerfile其内部包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。
镜像构成dockerfile构成

dockerfile文件示例

程序打成jar包,写dockerfile文件使用java基础镜像制作成镜像。

FROM java:8 

VOLUME /tmp

ADD ./wpsiis-web-0.0.1-SNAPSHOT.jar www.jar

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/www.jar"]

docker build –t 镜像名:版本号 . 在当前路径下,使用dockerfile文件进行镜像构建

docker-compose

使用docker-compose.yml配置文件来启动容器。

docker-compose up (-d) 创建容器并(后台)启动

docker-compose down 停止并删除容器

docker-compose.yml文件示例

version : '2'

services:


  mysql:

  restart: always

  image: mysql:latest

  ports:

    - "3306:3306"
  environment:
      MYSQL_ROOT_PASSWORD: 123456

  valumes:

    - /home/wpsiis/mysql/data:/var/lib/mysql
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值