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 小时前
Docker--Docker网络原理
网络·docker·容器
ALex_zry1 小时前
Docker Macvlan网络配置实战:解决“network already exists“错误
网络·docker·php
IT小辉同学1 小时前
Docker如何更换镜像源提高拉取速度
spring cloud·docker·eureka
matrixlzp2 小时前
K8S Service 原理、案例
云原生·容器·kubernetes
GnixAij3 小时前
Docker SSH端口转发
docker·ssh
angushine3 小时前
让Docker端口映射受Firewall管理而非iptables
运维·docker·容器
玄明Hanko5 小时前
生产环境到底能用Docker部署MySQL吗?
后端·mysql·docker
玄明Hanko5 小时前
Quarkus+Docker最全面完整教程:手把手搞定Java云原生
后端·docker·云原生
SimonLiu0095 小时前
清理HiNas(海纳斯) Docker日志并限制日志大小
java·docker·容器
coder_copy6 小时前
IDEA 2024 使用总结,踩坑
docker·intellij-idea