Docker概念速通

Docker概念速通

1.Docker的概念

白话:就是一个轻量的虚拟机,多余的东西不要。

1.docker:打包、分发和部署。

  • 打包:docker镜像
  • 分发:保存到镜像仓库
  • 部署:方便部署

2.好处:方便win下开发,Linux下部署。适合多个软件版本共存。win下就会出现问题。

3.安装:

拉取:docker pull redis:tag
运行:docker run -d -p 主机端口:容器端口 --name 容器名字  redis:tag
进入容器:docker exec -it id bin/bash

2.自定义镜像

DockerFile

docker-compose.yaml

1.DockerFile

FROM 基础镜像
ADD/COPY 主机目录 镜像目录
WORKDIR 工作目录/运行目录
RUN 下载一些东西
CMD 运行命令,例如 java -jar xxx.jar

构建镜像:

docker build -t 镜像名:版本标识

2.docker-compose.yaml

version: "3"
services:
  sonarqube:
    image: sonarqube:lts-community
    depends_on:
      - db
    environment:
      SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonar
      SONAR_JDBC_USERNAME: sonar
      SONAR_JDBC_PASSWORD: sonar
    volumes:
      - /usr/local/docker/sonar_qube/sonarqube_data:/opt/sonarqube/data
      - /usr/local/docker/sonar_qube/sonarqube_extensions:/opt/sonarqube/extensions
      - /usr/local/docker/sonar_qube/sonarqube_logs:/opt/sonarqube/logs
    ports:
      - "32004:9000"
  db:
    image: postgres:12
    environment:
      POSTGRES_USER: sonar
      POSTGRES_PASSWORD: sonar
    volumes:
      - /root/docker/sonarqube/postgresql:/var/lib/postgresql
      - /root/docker/sonarqube/postgresql_data:/var/lib/postgresql/data
    ports:
      - "5432:5432"

构建命令

docker compose up -d

 

3.目录挂载

-v 主机目录:容器目录

docker run -p 本机端口:容器端口 --name 容器名字 -v 主机目录:容器目录 容器ID

4.容器网络设置

创建网络 docker network create test-net
创建容器1:docker run -d -p 8080:8080 --network test-net --name auth xxxxxxx
创建容器2:docker run -d -p 6379:6379--name --network test-net  redis xxxxxxx

此时两个容器之间就处于一个网络。

5.登录Docker私有仓库

docker login ip -u 登录名 -p 密码

上一篇:【西瓜书】1.绪论