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 密码
相关推荐
程序员陆通3 小时前
Spring Cloud微服务中的内存泄漏问题定位与解决方案
java·spring cloud·微服务
惊岁晚4 小时前
【实践记录】github仓库的更新
算法·容器·r语言·github
Adorable老犀牛5 小时前
k8s使用 RBAC 鉴权
云原生·容器·kubernetes
KS、zheng5 小时前
【DOCKER】Windows Server 2016 Datacenter离线安装Docker引擎
windows·docker·容器
麦兜*5 小时前
Spring Integration 整合 Web3.0网关:智能合约事件监听与Spring Integration方案
java·spring boot·后端·spring·spring cloud·web3·智能合约
only_Klein7 小时前
K8S部署ELK(一):部署Filebeat日志收集器
elk·容器·kubernetes
天机️灵韵7 小时前
开源医院信息管理系统:基于若依框架的智慧医疗解决方案
java·开发语言·spring boot·spring cloud·github·开源项目
Generalzy8 小时前
快速搭建一个非生产k8s环境
云原生·容器·kubernetes
David爱编程8 小时前
Flannel 网络原理及实践指南:Kubernetes 容器通信的第一步
云原生·容器·kubernetes
JavaArchJourney8 小时前
Spring Cloud Gateway 核心原理(含源码分析)
spring cloud