docker学习
网络
- bridge
- 像Net网络一样,可以访问外网,但外网访问不了内部,并且bridge就也有桥的概念,你多创建一个容器,会多出来两个网口,他是从docker应用中出现一个,连接到容器的网口,所有有两个网口。(黄色的就是外网,绿色的是这个bridge的网段,应该是/16)这个模式不会进行DNS解析,可以端口映射,就可以让外网访问进来。
- host
- host网络只能有一个,也不能端口映射,host应该就变成宿主了,只有linux能这样,别的系统待定。
- null
- 自定义(可选)
- 自定义的bridge网络可以DNS解析其他容器。不能自定义host网络
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
docker images //可以看到所有的docker里的镜像
docker network ls //查看docker 网络
docker network create -d bridge naine-bridge
docker network inspect naihe-bridge //查看某一个网络信息
docker run -d --name naihe1 --network naihe-brige 镜像名称 //创建一个容器
docker exec -it naihe1 sh //群晖用sh 别的系统应该用bash。这样就进入容器中了
docker build -t zzyan/next-web:v1 .//用dockerfile创建一个镜像,dockerfile在当前目录上
docker cp /etc/123.txt 容器名:/etc/123.txt //从左边的地址复制到右边的
docker build -t zzyan/gpt-web . //编译这个目录,从.开始,tag是zzyan/gpt-web
docker save -o zzyan_chatgpt e42f899aa4a //从docker镜像中出来,名字是zzyan_chatgpt
docker save [OPTIONS] IMAGE [IMAGE...]: 将指定的镜像保存为一个tar归档文件。
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG] //重命名镜像
docker load -i /home/zzyan-gpt //导入tar归档文件
docker-compose -f [file.yaml] up -d ///用docker-compose,up一个服务
|
dockerfile
Docker-compose
这是一个管理多个容器的工具,可以一次编排多个容器,并让多个容器有连接关系。
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
|
version: '3'
services:
chatgpt-web:
image: yidadaa/chatgpt-next-web
ports:
- 3000:3000
environment:
OPENAI_API_KEY: 4bd1168fcd744a6cb52aff72665a67
BASE_URL: http://azure-openai:8080
CODE: "Aa123456"
HIDE_USER_API_KEY: 1
HIDE_BALANCE_QUERY: 1
depends_on:
- azure-openai
links:
- azure-openai
networks:
- chatgpt-ns
azure-openai:
image: stulzq/azure-openai-proxy
ports:
- 8080:8080
environment:
AZURE_OPENAI_ENDPOINT: https://piscan.openai.azure.com
AZURE_OPENAI_MODEL_MAPPER: gpt-3.5-turbo-16k=test1
# AZURE_OPENAI_MODEL_MAPPER: gpt-4=gpt-4,gpt-3.5-turbo=gpt-35-turbo
AZURE_OPENAI_API_VER: 2023-07-01-preview
networks:
- chatgpt-ns
networks:
chatgpt-ns:
driver: bridge
|