什么是docker
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
windows10下docker的下载与安装
非官方下载地址:https://oomake.com/download/docker-windows(版本可能非最新的,下载之后可更新)
官方下载地址: https://www.docker.com/get-docker
安装步骤:
1.windows10开启 Hyper-V
2.运行下载的文件
3.修改镜像下载源
- 登录阿里云,打开控制台,搜索容器镜像服务
- 点击镜像加速器,复制加速器地址
- 右键点击docker图标,选择settings
- 选择Daemon,修改Registry mirrors,输入加速器地址
4.验证,打开CMD,输入docker version
docker镜像下载和启动
CMD
- 镜像拉取:docker pull hello-world:latest
- 镜像查看:docker images
- 镜像运行:docker run hello-world
- 容器查看:docker ps -a
- 容器启动:docker start 容器ID
- 容器停止:docker stop 容器ID
- 容器删除:docker rm 容器ID
- 镜像删除:docker rmi 镜像ID
compose
docker-compose -f docker-compose.yml up 服务名
docker-compose.yml文件内容
version: '3'
services:
kafka:
image: wurstmeister/kafka:latest
container_name: sc-kafka
restart: always
volumes:
- ../data/kafka:/etc/localtime
networks:
- sc-net
ports:
- 9092:9092
environment:
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_ADVERTISED_HOST_NAME: 192.168.0.105
KAFKA_ADVERTISED_PORT: 9092
env_file: .env
depends_on:
- zookeeper
zookeeper:
image: wurstmeister/zookeeper:latest
container_name: sc-zookeeper
restart: always
volumes:
- ../data/zookeeper:/data
networks:
- sc-net
ports:
- 2181:2181
env_file: .env
networks:
sc-net:
external: false
idea可以通过下载docker插件的方式管理docker服务,注意docker服务启动端口,idea中docker插件通过端口与docker服务进行交互,一般来说是端口是2375
spring boot应用镜像制作
1.准备Dockerfile文件,Dockerfile文件格式可参考
https://www.jianshu.com/p/10ed530766af
2.打包应用
3.运行
docker相关命令
进入容器:docker exec -it 容器ID /bin/bash
查看应用日志:docker logs -f 应用名
镜像查找:docker search 应用名