【openresty】- 研发笔记 - 服务搭建

368 阅读1分钟

背景

  • 搭建一个web服务器,可以访问图片资源,并记录用户访问过图片的标记。

部署环境

  • 操作系统: Ubuntu 22.04.3 LTS
  • 部署方式: Docker

安装步骤

下载镜像

sudo docker pull bitnami/openresty:latest # 下载镜像

新建目录

mkdir website && cd website # 新建website工作目录
mkdir app # 新建实际的工作目录
touch my_server_block.conf # 下面server开头的内容是这个conf内的配置
server {
    listen 0.0.0.0:8080;
    root /app; # 容器内的根目录
    index index.htm index.html;
}

1713930300278.png

运行容器(方式一:命令方式)

# 新建nginxlogs目录,并授权
mkdir nginxlogs
sudo chmod -R 777 nginxlogs

# 运行容器 (说明: ro表示ready-only的意思)
sudo docker run -d --name openresty -p 8080:8080 \
-v /home/hxz/website/my_server_block.conf:/opt/bitnami/openresty/nginx/conf/server_blocks/my_server_block.conf:ro \
-v /home/hxz/website/app:/app \
-v /home/hxz/website/nginxlogs:/opt/bitnami/openresty/nginx/logs \
bitnami/openresty:latest


# 进入容器 sudo docker exec -it openresty bash

运行容器(方式二:docker-compose方式)

docker-compose.yml

version: '3.8'
services:
  openresty:
    image: bitnami/openresty:latest
    container_name: openresty
    ports:
      - "8080:8080"
    volumes:
      - /home/hxz/website/my_server_block.conf:/opt/bitnami/openresty/nginx/conf/server_blocks/my_server_block.conf:ro
      - /home/hxz/website/app:/app
      - /home/hxz/website/nginxlogs:/opt/bitnami/openresty/nginx/logs
    restart: unless-stopped

启动命令

# 新建nginxlogs目录,并授权 
mkdir nginxlogs 
sudo chmod -R 777 nginxlogs

# 启动
sudo docker-compose up -d

# 停止
sudo docker-compose down

测试验证

index.html

<!DOCTYPE html>
<html>
<head>
    <title>Welcome to My Site</title>
</head>
<body>
    <h1>Hello,World!</h1>
</body>
</html>

验证命令

# 在本地机器的工作目录下,新建index.html文件
# 路径: /home/hxz/website/app/index.html

# 访问地址,正常的话会出输出Hello,World!
curl 127.0.0.1:8080

其他指令

# 重载nginx
sudo docker exec openresty /opt/bitnami/openresty/nginx/sbin/nginx -s reload

参考资料

hub.docker.com/r/bitnami/o…

www.jianshu.com/p/c5447dc0a…