nginx配置文件配置共用80端口

  1. 先修改监听的端口号,即共用的端口号,http.server.listen的值改成80
  2. 添加子服务器,新建location,每一个location代表一种匹配方式,如果访问能够匹配上则会跳转到proxy_pass定义的其他端口号提供的服务上去,location可以写多个
#user       www www;  ## Default: nobody
    worker_processes  5;  ## Default: 1
    error_log  logs/error.log;
    pid        logs/nginx.pid;
    worker_rlimit_nofile 8192;

    events {
      worker_connections  4096;  ## Default: 1024
    }

    http {

      default_type application/octet-stream;
      log_format   main '$remote_addr - $remote_user [$time_local]  $status '
        '"$request" $body_bytes_sent "$http_referer" '
        '"$http_user_agent" "$http_x_forwarded_for"';
      access_log   logs/access.log  main;
      sendfile     on;
      tcp_nopush   on;
      server_names_hash_bucket_size 128; # this seems to be required for some vhosts


      server { # simple reverse-proxy
        listen       80;
        server_name  oxoxo.xyz;
        access_log   logs/domain2.access.log  main;

        location / {
          proxy_pass      http://172.21.0.15:81/;
        }
        location /wx {
          proxy_pass      http://172.21.0.15:83/;
        }
      }


    }

natapp后台运行查看随机域名

  1. 注册的service的指令后面是可以加参数的如下
    ./natapp -log=-log=stdout
  2. 配置文件config.ini的log参数和logevel参数调整一下
    config.ini
#将本文件放置于natapp同级目录 程序将读取 [default] 段
#在命令行参数模式如 natapp -authtoken=xxx 等相同参数将会覆盖掉此配置
#命令行参数 -config= 可以指定任意config.ini文件
[default]
authtoken=xxxxxxxx                      #对应一条隧道的authtoken
clienttoken=                    #对应客户端的clienttoken,将会忽略authtoken,若无请留空,
log=stdout                        #log 日志文件,可指定本地文件, none=不做记录,stdout=直接屏幕输出 ,默认为none
loglevel=DEBUG                  #日志等级 DEBUG, INFO, WARNING, ERROR 默认为 DEBUG
http_proxy=                  #代理设置 如 http://10.123.10.10:3128 非代理上网用户请务必留空
  1. systemctl restart后再status就能从log里看到随机域名是什么了

安装docker版wordpress

指令

docker run --name wordpress --restart=always -d -p 81:80 -e WORDPRESS_DB_NAME=wordpress -e WORDPRESS_DB_HOST=172.21.0.1 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD='xxxxxxx' -v /home/dockerapp/wordpress:/var/www/html 61
指令 含义
–name wordpress 实例名字
–restart=always 自动重启
-p 81:80 端口映射,虚拟机内的80对应宿主机的81,wordpress默认占用80端口
-e WORDPRESS_DB_NAME=wordpress 需要先建一个mysql数据库,名字在这里指定
-e WORDPRESS_DB_USER=root 数据库的用户名
-e WORDPRESS_DB_PASSWORD=’xxxxxxx’ 数据库的密码
-v 代码文件映射到宿主机

指令末端是镜像的名字

安装docker版mysql

通用指令

docker run -d -p 3306:3306 --restart=always --name mysql -v /home/dockerapp/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=xxx  0d

说明:

指令 说明
-d 后台运行
-p 3306:3306 端口映射,冒号前面的是宿主机的端口,后面的是mysql在docker虚拟机的端口,固定的,如果有多个端口那么就写多个-p
–restart=always 自动重启
–name mysql docker实例的名字
-v /home/dockerapp/mysql:/var/lib/mysql 数据卷映射,冒号前面的是宿主机上的文件位置,后面的是mysql在docker虚拟机里的文件位置,docker虚拟机里的文件位置是固定的 ,如果有多个数据卷就写多个-v
-e MYSQL_ROOT_PASSWORD=xxx 环境变量,root账号的密码,是必要的设置,不能少 ,如果有多个环境变量就写多个-e

指令的结尾是镜像的名字