我创建了一个azure管道,以通过以下配置部署具有azure函数的自定义docker映像。尽管该配置在构建方面起作用,但是服务器上未运行任何功能,我注意到在日志中未检测到任何功能。
pool:
name: Azure Pipelines
steps:
- task: Docker@1
displayName: 'build: build the docker image'
inputs:
azureSubscriptionEndpoint: 'Azure subscription 1 (3fc75102-5159-4491-b61c-b3fcb845f648)'
azureContainerRegistry: whaiiapp.azurecr.io
imageName: 'azureapp.azurecr.io/puppeteer:$(Build.BuildId)'
useDefaultContext: false
- task: Docker@1
displayName: 'push the image'
inputs:
azureSubscriptionEndpoint: 'Azure subscription 1 (3fc75102-5159-4491-b61c-b3fcb845f648)'
azureContainerRegistry: azureapp.azurecr.io
command: 'Push an image'
imageName: 'azureap.azurecr.io/puppeteer:$(Build.BuildId)'
- task: FuncToolsInstaller@0
displayName: 'Install func tools - latest'
- task: AzureFunctionAppContainer@1
displayName: 'Start Azure Function App on Container Deploy: generate-report-dev'
inputs:
azureSubscription: 'Azure subscription 1 (3fc75102-5159-4491-b61c-b3fcb845f648)'
appName: 'generate-report-dev'
imageName: azureapp.azurecr.io/puppeteer
containerCommand: 'npm start'
以下是我的Dockerfile配置
FROM mcr.microsoft.com/azure-functions/node:3.0-appservice
# Chromium dependencies
RUN apt-get update -yq \
&& apt-get install -yq git git-extras gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 \
libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 \
libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 \
libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 \
fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-kacst libgbm-dev \
ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget && \
wget https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64.deb && \
dpkg -i dumb-init_*.deb && rm -f dumb-init_*.deb && \
apt-get clean && apt-get autoremove -y && rm -rf /var/lib/apt/lists/*
WORKDIR /home/site/wwwroot
RUN npm install --no-save puppeteer
ENV AzureWebJobsScriptRoot=/home/site/wwwroot \
AzureFunctionsJobHost__Logging__Console__IsEnabled=true \
FUNCTIONS_WORKER_RUNTIME=node \
COPY . /home/site/wwwroot
RUN cd /home/site/wwwroot && npm install
CMD [ "npm start" ]
我不确定如何进行调试。我尝试通过ssh登录服务器并运行func start对其进行测试,结果显示func命令不可用。
答案 0 :(得分:0)
我相信您的azure函数无法从注册表中提取图像,我确实遇到了同样的问题,因此我只是创建了一个新的函数应用,然后在部署过程中选择了存储库,因此它将在后面创建一个Webhook场景,每次更新时都会从注册表中提取最新图像。