HTTP content-type

Content-Type(内容类型),一般是指网页中存在的 Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件,这就是经常看到一些 PHP 网页点击的结果却是下载一个文件或一张图片的原因。

Content-Type 标头告诉客户端实际返回的内容的内容类型。

语法格式:

Content-Type: text/html; charset=utf-8
Content-Type: multipart/form-data; boundary=something

阅读全文 »

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
upstream apiclusterhealthy{
server 10.10.0.17:30000;
server 10.10.0.19:30000;
server 10.10.0.39:30000;

ip_hash;
}

map $http_connection $connection_upgrade {
"~*Upgrade" $http_connection;
default keep-alive;
}

## server 内配置
#
location /cloud/hubs/ {
proxy_pass http://apiclusterhealthy; #转发请求的地址
rewrite ^/cloud/(.*)$ /$1 break;

# include /etc/nginx/nginxconfig.io/proxy.conf;
# Configuration for WebSockets
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_cache off;
# WebSockets were implemented after http/1.0
proxy_http_version 1.1;

# Configuration for ServerSentEvents
proxy_buffering off;

# Configuration for LongPolling or if your KeepAliveInterval is longer than 60 seconds
proxy_read_timeout 100s;

proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
阅读全文 »

配置

创建外部网络

如果没有外部网络,需要运行以下命令创建:

1
2
3
4
5
# 查看网络列表
docker network ls

# 创建网络
docker network create --driver bridge --subnet 10.10.13.0/24 --gateway 10.10.13.1 docker_compose_net

配置文件

创建目录:

1
mkdir -p nginx-proxy-manager/data nginx-proxy-manager/letsencrypt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
version: '3.8'

networks:
default:
external:
name: docker_compose_net

services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
container_name: nginx-proxy-manager
ports:
- '9850:80'
- '9851:81'
- '9843:443'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
1
2
3
4
5
6
7
8
9
10
11
# 启动
docker-compose -f /opt/nginx-proxy-manager/compose.yml up -d

# 重启
docker-compose -f /opt/nginx-proxy-manager/compose.yml restart

# 移除
docker-compose -f /opt/nginx-proxy-manager/compose.yml down -v

# 更新
docker-compose -f /opt/nginx-proxy-manager/compose.yml up -d --build

容器81端口为管理端口。

Default Admin User:

Email: admin@example.com
Password: changeme

参考:

https://github.com/NginxProxyManager/nginx-proxy-manager

一,快速启动

1,创建目录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
mkdir -p /opt/consul/consul1/config
mkdir -p /opt/consul/consul1/data
mkdir -p /opt/consul/consul1/log

mkdir -p /opt/consul/consul2/config
mkdir -p /opt/consul/consul2/data
mkdir -p /opt/consul/consul2/log

mkdir -p /opt/consul/consul3/config
mkdir -p /opt/consul/consul3/data
mkdir -p /opt/consul/consul3/log

mkdir -p /opt/consul/consul4/config
mkdir -p /opt/consul/consul4/data
mkdir -p /opt/consul/consul4/log

# 授权
chmod 777 /opt/consul/consul1/config /opt/consul/consul1/data /opt/consul/consul1/log /opt/consul/consul2/config /opt/consul/consul2/data /opt/consul/consul2/log /opt/consul/consul3/config /opt/consul/consul3/data /opt/consul/consul3/log /opt/consul/consul4/config /opt/consul/consul4/data /opt/consul/consul4/log

2,配置yml文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
version: '3.5'

networks:
default:
external:
name: docker_compose_net

services:
consul1:
image: consul:latest
container_name: consul1
restart: unless-stopped
command: agent -server -client=0.0.0.0 -bootstrap-expect=3 -node=consul1
volumes:
- /opt/consul/consul1/data:/consul/data
- /opt/consul/consul1/config:/consul/config
- /opt/consul/consul1/log:/consul/log
consul2:
image: consul:latest
container_name: consul2
restart: unless-stopped
command: agent -server -client=0.0.0.0 -retry-join=consul1 -node=consul2
volumes:
- /opt/consul/consul2/data:/consul/data
- /opt/consul/consul2/config:/consul/config
- /opt/consul/consul2/log:/consul/log
consul3:
image: consul:latest
container_name: consul3
restart: unless-stopped
command: agent -server -client=0.0.0.0 -retry-join=consul1 -node=consul3
volumes:
- /opt/consul/consul3/data:/consul/data
- /opt/consul/consul3/config:/consul/config
- /opt/consul/consul3/log:/consul/log
consul4:
image: consul:latest
container_name: consul4
restart: unless-stopped
ports:
- 8500:8500
command: agent -client=0.0.0.0 -retry-join=consul1 -ui -node=client1
volumes:
- /opt/consul/consul4/data:/consul/data
- /opt/consul/consul4/config:/consul/config
- /opt/consul/consul4/log:/consul/log
阅读全文 »

1
docker run -d --restart=always --name="portainer" -p 9200:9000 -v /var/run/docker.sock:/var/run/docker.sock 6053537/portainer-ce

在浏览器打开 Host:9200,首次进入按照要求设置用户名,密码。

查看网络

1
iptables -L DOCKER

配置Docker

1
2
3
4
vim /etc/default/docker

#修改文件,此处设置等同于在创建容器时手动指定iptables=false参数
DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4 -iptables=false"
1
2
3
4
5
vim /etc/docker/daemon.json
{
"iptables": false
}
#此处对更改设置之前创建的容器也有效,编辑后需重启docker服务

重启docker服务

1
2
3
service docker start
service docker stop
service docker restart
阅读全文 »

构建Keycloak镜像

编写 Dockerfile 文件:

1
2
3
4
5
6
7
8
9
10
11
FROM quay.io/keycloak/keycloak:latest as builder

WORKDIR /opt/keycloak
# for demonstration purposes only, please make sure to use proper certificates in production instead
RUN keytool -genkeypair -storepass password -storetype PKCS12 -keyalg RSA -keysize 2048 -dname "CN=server" -alias server -ext "SAN:c=DNS:localhost,IP:127.0.0.1" -keystore conf/server.keystore
RUN /opt/keycloak/bin/kc.sh build

FROM quay.io/keycloak/keycloak:latest
COPY --from=builder /opt/keycloak/ /opt/keycloak/

ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
1
docker build . -t mykeycloak:1.0.0
阅读全文 »

Alt + F1

命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# 查看
esxcli storage

# 列出ESXi主机的所有LUN(逻辑单元)的路径信息
esxcli storage core path list

# 列出连接到ESXi的LUN列表
esxcli storage core device list

# 若要查询LUN的详细路径信息,可使用如下命令列出某个卷的信息。其中-d参数加上该lun的wwn号。
esxcli storage core path list -d naa.600b342a17eacb1d6e6bde340d0000d0

# 查询active总路径或单独某个lun的路径数量
esxcli storage core path list | grep “State: active” | wc -l

# 查询单独某个LUN的路径的数量,以LUN:2为例
esxcli storage core path list | grep “LUN: 2” | wc -l

# 查看系统版本
vmware -v

# 查看系统版本包括patch等信息
esxcli system version get

# 查看系统时间
esxcli system time get

# ESXi主机进入/退出,维护模式
esxcli system maintenanceMode set --enable true/false

# 系统重启/关机(必须处于维护模式,否则命令不生效)
esxcli system shutdown reboot/poweroff

# 查看接口ipv4地址
esxcli network ip interface ipv4 get

# 查看路由表
esxcli network ip route ipv4 list

# 查看ESXi主机网卡列表(nic)或up-link列表
esxcli network nic list

# 关闭/打开vmnic1接口
esxcli network nic down/up -n=vmnic1

阅读全文 »

配置

创建目录:

1
2
3
4
5
6
7
8
mkdir -p /opt/mysql8/conf
mkdir -p /opt/mysql8/db
mkdir -p /opt/mysql8/binlogs

# 授权
chmod 777 /opt/mysql8/conf
chmod 777 /opt/mysql8/db
chmod 777 /opt/mysql8/binlogs

目录结构如下:

1
2
3
4
5
├── conf
│ └── my.cnf # MySQL配置文件
├── db # 数据库数据文件目录
├── mysql-docker-compose.yml # docker-compose.yml文件
└── binlogs # 日志存放目录
阅读全文 »

MobaXterm 是一款非常好用的远程工具,也可以说是很多朋友的远程操作必备的终极工具箱,它的优点就是拥有多合一网络应用程序,其中有远程网络工具SSH,X11,RDP,VNC,FTP、MOSH以及Unix命令bash,ls,cat,sed,grep,awk,rsync,而且在软件包管理器中还可以下载并使用更多的Unix工具。当然了该软件采用了X11服务器,能够让显示器使用SSH进行安全传输,不仅可以简化还可以保护您的工作。

Snipaste_2023-04-07_15-34-01.png

软件介绍

MobaXterm是一款豪华、全功能的终端软件。它不仅可以像PuTTY一样通过SSH连接Raspberry Pi等开源硬件,并且还能:

  • 支持各种连接 SSH,X11,RDP,VNC,MOSH,FTP,串口,X server等功能
  • 支持 Unix 命令(bash,ls,cat,sed,grep,awk,rsync,…)
  • 连接 SSH 终端后支持 SFTP 传输文件
  • 各种丰富的插件(git/dig/aria2…)
  • 可运行 Windows 或软件
阅读全文 »
0%