zoukankan      html  css  js  c++  java
  • Docker基本用法

    docker exec -it f14e9a56cc03 redis-cli

    #Sonarqube基本Run方式 docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube

    /usr/local/docker

    /marvel/local

    sudo mkdir -p /var/marvel/logs
    sudo chmod 777 /var/marvel/logs
     
    curl http://139.196.238.104:9000/
     
    docker-compose up -d
    docker-compose down
    使用docker-compose搭建Sonarqube平台
    sudo touch docker-compose.yml

    version: "3.3"
    services:
    adminer:
    image: adminer
    restart: always
    ports:
    - 8088:8080

    sonarqube6.7:
    image: sonarqube:latest
    container_name: sonarqube
    ports:
    - "9000:9000"
    - "9092:9092"
    volumes:
    - /etc/localtime:/etc/localtime:ro
    environment:
    - SONARQUBE_JDBC_USERNAME=root
    - SONARQUBE_JDBC_PASSWORD=*****
    - SONARQUBE_JDBC_URL=jdbc:mysql://localhost:3306/hzc?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

     
     
     
     
     
    docker exec -it mysql-master bash
    date
    docker inspect 查看容器信息
    Docker容器加K8S编排是当前容器云的主流实践之一
     
    # -d 是指定后台运行
    # --name是指定容器名称
    # -p 8080:8080 是指将容器的8080端口映射给宿主机的8080端口
    格式为:主机(宿主)端口:容器端口
    docker run -d --name test -p 8080:8080 itweknow/springboot-docker
     
     
     
     

    docker exec -it 189e7fbaf9f3 bash mysql

     
     
    docker pull elasticsearch

    docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name es01 5c1e1ecfe33a、
    spring.elasticsearch.jest.uris=http://127.0.0.1:9200
     
    ##端口号
    server.port=8888
     
    ##es地址
    #spring.data.elasticsearch.cluster-nodes = 192.168.1.137:9300
     
    spring.elasticsearch.jest.uris=http://127.0.0.1:9200
     
    spring.data.elasticsearch.cluster-name=docker-cluster
    spring.data.elasticsearch.cluster-nodes=192.168.1.137:9300
     
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
    </dependency>
     
     
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
    <version>2.1.1.RELEASE</version>
     
    @Document(indexName = "esunit", type = "esunit", shards = 1, replicas = 0)
     
    docker pull mobz/elasticsearch-head:5
     
     
    docker pull rabbitmq:management
     
    docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
     
     
    docker pull zookeeper
    docker run --privileged=true -d --name zookeeper --publish 2181:2181 -d zookeeper:latest
    docker ps
     
    docker exec -it imageid  redis-cli
    docker exec -it 4591552a4185 bash
    exec 对容器执行某些操作
    -it 让容器可以接受标准输入并分配一个伪tty
    4591552a4185 是刚刚启动的 nginx 容器唯一标记
    bash 指定交互的程序为 bash
     
     
    打包
    docker build -t expert:v1 .
    docker build -t datax .
     
    运行
    docker run -d -p 8888:8080 datax
     
    container
    docker stop container
    docker rm container
     
    docker 日志
    docker logs -tf 652
     
     
    image
    docker images
    docker rmi
     
    打包镜像
    docker build -t hellowebapp:1.0 .
     
    # 基础镜像使用Java

    FROM java:8

    # VOLUME 指定了临时文件目录为/tmp

    VOLUME /tmp

    # 将jar包添加到容器中并更名为aevenger.jar

    ADD marvel-eureka-1.0.0-RELEASE.jar aevenger.jar

    # 运行jar包

    # RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

    RUN /bin/bash -c 'touch /aevenger.jar'

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

    ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./
    urandom","-Dspring.profiles.active=k8s","-Dmarvel-eureka-01.hostname=test-marvel-1","-Dmarvel-eureka-02.hostname=test-marvel-2","-jar","/aevenger.jar"]

    # 指定容器需要映射到主机的端口

    EXPOSE 8761

    ENTRYPOINT

    入口点,在指定容器启动程序及参数

    场景一:让镜像变成像命令一样使用。
    场景二:应用运行前的准备工作。
    可多次设置,但只有最后一个有效。

    ENTRYPOINT[“executable”,“param1”,“param2”]
    ENTRYPOINT command param1 param2

    ENTRYPOINT [“java”,"-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
    为了缩短 Tomcat 的启动时间,添加 java.security.egd的系统属性指向 /dev/urandom作为 ENTRYPOINT

     https://blog.csdn.net/Sirius_hly/article/details/83685256 
     
     
     

    cat docker-compose.yml
    version: '2'
    services:
    mysql:
    network_mode: "host"
    environment:
    MYSQL_ROOT_PASSWORD: "*****"
    image: "docker.io/mysql:5.6"
    restart: always
    volumes:
    - "./db:/var/lib/mysql"
    - "./my.cnf:/etc/my.cnf"
    ports:
    - "3306:3306"

    Dockerfile
    • Docker从基础镜像运行一个容器。
    • 执行一条指令,对容器做出修改。
    • 执行类似docker commit的操作,提交一个新的镜像层。
    • Docker再基于刚提交的镜像层运行一个新容器。
    • 执行Dockerfile中的下一条指令,直到所有指令都执行完毕
    From ubuntu:latest
    MAINTAINER WZL 
    RUN apt-get update && apt-get install -y nginx
    RUN echo 'Hi, I am in your container' > /var/www/html/index.nginx-debian.html
    EXPOSE 80
     

  • 相关阅读:
    20201022-1 每周例行报告
    Alpha发布
    每周例行报告
    20201207-总结
    20201126-1 每周例行报告
    作业要求 20201120-1 每周例行报告
    20201112-1 每周例行报告
    作业要求 20201015-3 每周例行报告
    20200924-5 四则运算试题生成,结对
    20200924-1 每周例行报告
  • 原文地址:https://www.cnblogs.com/ywsheng/p/11250109.html
Copyright © 2011-2022 走看看