diff --git a/Dockerfile b/Dockerfile index bb6a141..398782c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -28,6 +28,7 @@ RUN install-php-extensions redis RUN install-php-extensions event RUN install-php-extensions imagick RUN install-php-extensions zip +RUN install-php-extensions pcntl # 清理默认 Nginx 配置 RUN rm /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default diff --git a/README.md b/README.md index ea9a5fe..1a8b5a7 100644 --- a/README.md +++ b/README.md @@ -251,7 +251,7 @@ docker build -t ulthon/ulthon_admin:202404071454 . ## 运行镜像 - +### docker命令正式运行 下面的命令中为容器指定了名字,可自行替换。 相同名称不能重复运行,所以指定名字是个好习惯,否则docker会自动起名。 @@ -279,6 +279,27 @@ server > 如果不映射目录,镜像不会出错,但重启后丢失。 +### docker compose 正式运行 + +如果和代码一起分发,那么直接运行即可。会自动构建docker镜像并映射当前目录。 +```bash +docker compose up -d +``` + +建议提前构建好镜像,使用镜像名启动,此时需要映射指定的目录,但不需要分发代码了。 + +### docker开发运行 + +需要提前构建镜像,比如镜像名为:`ulthon/ulthon_admin:v1`。 +然后运行: +```bash +# 默认行为 +docker run --rm -it --name ulthon_admin_instance -p 88:80 -v ./:/var/www/html/ ulthon/ulthon_admin:v1 +# 运行指定命令 +docker run --rm -it --name ulthon_admin_instance -p 88:80 -v ./:/var/www/html/ ulthon/ulthon_admin:v1 think +``` +要注意该命令不能通过crtl+c终止。 + ## 基本用法 diff --git a/docker-compose.yaml b/docker-compose.yaml index 829db03..577ab07 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,15 +1,16 @@ services: - ulthon_admin: - # image: ulthon/ulthon_admin:v1 - build: - context: . # Dockerfile 所在的目录 - dockerfile: Dockerfile # Dockerfile 的名称 - restart: always - ports: - - "88:80" # HTTP - volumes: - # - ./:/var/www/html # 开发模式或者直接分发代码可以去掉注释并将下面的目录增加注释 - - ./runtime:/var/www/html/runtime - - ./public/storage:/var/www/html/public/storage - - ./public/build:/var/www/html/public/build - - ./storage:/var/www/html/storage + ulthon_admin: + # 正式环境中,您应当构建一个完整镜像,使用镜像名称或id运行,不要使用dockerfile + # image: ulthon/ulthon_admin:v1 + build: + context: . # Dockerfile 所在的目录 + dockerfile: Dockerfile # Dockerfile 的名称 + restart: always + ports: + - "88:80" # HTTP + volumes: + - ./:/var/www/html # 直接分发代码可以去掉注释并将下面的目录增加注释 + # - ./runtime:/var/www/html/runtime + # - ./public/storage:/var/www/html/public/storage + # - ./public/build:/var/www/html/public/build + # - ./storage:/var/www/html/storage