【问题标题】:apt-get install -y nginx with newer versionapt-get install -y nginx 更新版本
【发布时间】:2019-03-22 10:05:44
【问题描述】:

在 Dockerfile 中:

FROM node:8
RUN apt-get update && apt-get install -y \
  nginx

我想我通过这种方式得到了一个非常旧的 nginx 版本。如何安装较新的版本,例如 1.15.7? 我可以这样做吗:

FROM node:8
RUN apt-get update && apt-get install -y \
  curl \
  # Where to download the nginx source? Pass the download path below
  && curl -sL \
  && apt-get install -y nginx

【问题讨论】:

    标签: node.js docker nginx apt-get


    【解决方案1】:

    Node:8 使用 debian 拉伸,所以
    1. 在文本编辑器中打开 /etc/apt/sources.list 并在底部添加以下行:

    deb http://nginx.org/packages/mainline/debian/ stretch nginx
    
    1. 导入存储库的包签名密钥并将其添加到 apt:
    sudo wget http://nginx.org/keys/nginx_signing.key
    sudo apt-key add nginx_signing.key
    
    1. 安装 nginx
    sudo apt update
    sudo apt install nginx
    

    【讨论】:

      【解决方案2】:

      如果您想使用 apt-get 安装具有特定版本的软件包,您可以:

      安装版本

      sudo apt-get install <package name>=<version>
      

      Nginx

      sudo apt-get install nginx=1.5.*
      

      重新(评论)选项 1:从其主线存储库安装 Nginx:

      您需要安装密钥才能让 Ubuntu 信任来自该存储库的软件包。

      cd /tmp/ && wget http://nginx.org/keys/nginx_signing.key
      

      添加密钥后,运行以下命令在 Ubuntu 上安装 Nginx 的 Mainline 存储库或分支。

      sudo sh -c "echo 'deb http://nginx.org/packages/mainline/ubuntu/ '$(lsb_release -cs)' nginx' > /etc/apt/sources.list.d/Nginx.list"
      
      sudo apt-get update
      sudo apt-get install nginx
      

      Re(评论)选项2:从其稳定存储库安装Nginx:

      sudo sh -c "echo 'deb http://nginx.org/packages/stable/ubuntu/ '$(lsb_release -cs)' nginx' > /etc/apt/sources.list.d/Nginx.list"
      sudo apt-get update
      sudo apt-get install nginx
      

      【讨论】:

      • 它说没有找到'nginx'的版本'1.15.*'。它只适用于nginx=1.10.3-1+deb9u2,它是旧的、损坏的版本。
      猜你喜欢
      • 1970-01-01
      • 2012-03-21
      • 2021-12-09
      • 1970-01-01
      • 2014-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多