• docker 配置jar ,运行


    阿里云:

    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

    https://download.docker.com/linux/centos/docker-ce.repo

    ****curl url #可以看一下网络通不通

    ****虚拟机的时候,设置两个网卡:一个host-only,一个nat

    一、docker基本操作

    1、安装

     #可以查看docker有没有镜像
    $ docker search XXX
    $ sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repohttps://download.docker.com/linux/centos/docker-ce.repo
    # 关闭防火墙和selinux
    $ systemctl stop firewalld
    $ setenforce 0

     
     运行 (root账号执行启动)

    $ sudo systemctl start docker
    

     2、安装镜像

    # docker images
    [root@bogon docker]# docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    hello-world         latest              e38bc07ac18e        5 weeks ago         1.85kB
    centos              latest              e934aafc2206        5 weeks ago         199MB
    
    [root@bogon docker]# docker run -ti e934
    进入镜像,退出
    [root@cf085ef769b3 /]# exit
    

    3、一些常见命令(这部分有粘贴,如果侵权,联系删除)

    1、docker -h 帮助
    2、获取镜像
    sudo docker pull NAME[:TAG]
    sudo docker pull centos:latest
    3、启动Container盒子
    sudo docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    sudp docker run -t -i contos /bin/bash
    4、查看镜像列表,列出本地的所有images
    sudo docker images [OPTIONS] [NAME]
    sudo docker images centos
    5、查看容器列表,可看到我们创建过的所有container
    sudo docker ps [OPTIONS]
    sudo docker ps -a
    6、删除镜像,从本地删除一个已经下载的镜像
    sudo docker rmi IMAGE [IMAGE...]
    sudo docker rmi centos:latest
    7、移除一个或多个容器实例
    sudo docker rm [OPTIONS] CONTAINER [CONTAINER...]
    移除所有微运行的容器
    sudo docker rm sudo docker ps -aq
    8、停止一个正在运行的容器
    sudo docker kill [OPTIONS] CONTAINER [CONTAINNER...]
    sudo docker kill 026e
    9、重启一个正在运行的容器
    sudo docker restart [OPTIONS] contains[CONTAINER]
    sudo docker restart 026e
    10、停止一个已经停止的容器
    sudo docker start [OPTIONS] CONTAINER [CONTAINER..]
    sudo docker start 026e

    4、外界访问,用 docker run -ti 访问,外界无法访问,要加映射

    安装jdk,搜索安装
    yum search java|grep jdk
    yum install java-1.8.0-openjdk

      查看jdk版本

      java -version

    5、安装一个jdk的镜像

    #这个应该不太对,这个是整个java的
    #安装一个jdk的镜像
    sudo docker pull java

    在相应的目录项创建文件

    (创建目录 mkdir dockerInfo

      创建文件 touch Dockerfile)

    [root@bogon dockerInfo]# ls
    Dockerfile  javastudy.jar  run.sh

    6、编辑文件

    #Dockerfile文件内容
    
    FROM java
    ADD javastudy.jar app.jar
    RUN bash -c 'touch /app.jar'
    ENTRYPOINT ["java","-jar","/app.jar"]

    #说明
    dockerfile的基础命令FROM:
    指为当前的环境引入一个基础镜像(nginx环境之上的linux内核镜像)
    RUN:运行指令(apt install vim相似的指令)
    CMD:执行命令(和run很相似,但是一个dockerfile只能有一个cmd指令,如有 多个最后一个生效)
    LABEL:设置标签(类似为变量赋值)
    EXPOSE:暴露端口号(解除断口的防火墙)
    ENV:设置环境变量
    COPY:复制到指定地方
    ADD: copy指令的高级版(具有解压功能)
    ENTRYPOINT:切入点(如run功能相似,但是可以覆盖CMD的内容)
    VOLUME:挂载的作用
    USER:指定容器的用户
    WORKDIR:如果目录存在 cd到指定目录,不存在则创建并cd到指定目录
    ARG:表示变量
                                                  

    7、创建新的镜像

    #其中 -t 标记来添加 tag,指定新的镜像的用户信息。“.” 是 Dockerfile 所在的路径(当前目录),也可以替换为一个具体的 Dockerfile 的路径。
    #注意最后的那个 .
    # -t 说明的镜像名称,没有-f,是默认当前目录下的Dockerfile
    #有-f,是指定目录,还有,每次需改Dockerfile,需要修改镜像
    sudo docker build -t springboottest .
    
    #修改镜像(大概是这样,没试过)
    docker commit -m "Added json gem" -a "Docker Newbee" 0b2616b0e5a8 ouruser/sinatra:v2
    
    #删除镜像
    docker images
    #记住镜像的Id
    docker ps -a
    #查看镜像下的容器
    docker rm 容器id
    #删除所有的容器
    docker rm $(docker ps -a -q)
    #在删除镜像 docker rmi 镜像id

    8、运行

    #内部运行 不推荐,
    docker run -ti springboottest
    
    #设置端口号
    docker run -d -p 8080:8080 springboottest
    
    就可以访问了
    http://Ip:8080

     二、Nginx的安装使用

     1、镜像

    #查看docker有没有镜像
    docker search nginx
    #查看到最新的
    docker pull nginx
    #可以查到 nginx的镜像
    docker images

    2、运行,分配端口80

    #运行,分配端口80
    docker run -d -p 80:80 nginx
    #可以访问IP,80是默认端口

    3、使用配置

    #查看容器Id
    docker ps
    #进入容器
    docker inspect 容器Id号
    
    #还有另外一种方法
    $ sudo docker ps  
    $ sudo docker exec -ti 容器Id /bin/bash

    #vi 和vim没有找到命令,安装一下命令
    $ apt-get update
    $apt-get install vim

    #查看nginx配置
    $ cd /etc/nginx/
    $ vi nginx.conf
    #nginx.conf说明

    ########### 每个指令必须有分号结束。#################
    #user administrator administrators;  #配置用户或者组,默认为nobody nobody。
    #worker_processes 2;  #允许生成的进程数,默认为1
    #pid /nginx/pid/nginx.pid;   #指定nginx进程运行文件存放地址
    error_log log/error.log debug;  #制定日志路径,级别。这个设置可以放入全局块,http块,server块,级别以此为:debug|info|notice|warn|error|crit|alert|emerg
    events {
        accept_mutex on;   #设置网路连接序列化,防止惊群现象发生,默认为on
        multi_accept on;  #设置一个进程是否同时接受多个网络连接,默认为off
        #use epoll;      #事件驱动模型,select|poll|kqueue|epoll|resig|/dev/poll|eventport
        worker_connections  1024;    #最大连接数,默认为512
    }
    http {
        include       mime.types;   #文件扩展名与文件类型映射表
        default_type  application/octet-stream; #默认文件类型,默认为text/plain
        #access_log off; #取消服务日志    
        log_format myFormat '$remote_addr–$remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for'; #自定义格式
        access_log log/access.log myFormat;  #combined为日志格式的默认值
        sendfile on;   #允许sendfile方式传输文件,默认为off,可以在http块,server块,location块。
        sendfile_max_chunk 100k;  #每个进程每次调用传输数量不能大于设定的值,默认为0,即不设上限。
        keepalive_timeout 65;  #连接超时时间,默认为75s,可以在http,server,location块。

        upstream mysvr {   
          server 127.0.0.1:7878;
          server 192.168.10.121:3333 backup;  #热备
        }
        error_page 404 https://www.baidu.com; #错误页
        server {
            keepalive_requests 120; #单连接请求上限次数。
            listen       4545;   #监听端口
            server_name  127.0.0.1;   #监听地址       
            location  ~*^.+$ {       #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
               #root path;  #根目录
               #index vv.txt;  #设置默认页
               proxy_pass  http://mysvr;  #请求转向mysvr 定义的服务器列表
               deny 127.0.0.1;  #拒绝的ip
               allow 172.18.5.54; #允许的ip           
            }
        }
    }

     三、mysql

    #镜像
    $ docker pull mysql
    #运行mysql
    $ docker run -d -P mysql
     
  • 相关阅读:
    cmd net use
    Linux虚拟机安装VMware Tools
    转:完成端口(Completion Port)详解
    很幽默的讲解六种Socket IO模型
    重新学习二叉树作的几道习题
    RuntimeException和Exception区别
    不同概率的抽奖
    SpringMVC的几种返回方式
    mybatis动态sql trim
    Tomcat 7最大并发连接数的正确修改方法
  • 原文地址:https://www.cnblogs.com/wu-fm/p/9054980.html
Copyright © 2020-2023  润新知