我让Kubernetes在pod中设置并运行grpc服务.我成功地在服务端点击了一个端点,其中有一个print()语句,但我在日志文件中看不到任何日志.我之前在Kubernetes中运行(cron)作业时看到过这种情况,日志只在作业完成后出现(而不是在作业运行时).有没有办法让kubernetes立即写入日志文件?我可以放置的任何设置(群集级别还是仅用于pod)?在此先感谢您的帮助!
我正在使用 firebase 来解析用户数据进行身份验证,如下所示:
from firebase_admin import auth decoded_token = auth.verify_id_token(client_id_token) 我正在用 firebase_admin.initialize_app(cred) 初始化我的 firebase 信用
这里的 cliend_id_token 是客户端发送的令牌。但是,这需要大约 1 秒才能执行,这似乎太长了。一种可能是在此之上使用缓存层(lru cache、memcache),但从根本上看来它仍然不应该花费这么长时间。查看 verify_id_token 的签名,似乎没有任何可以传递的内容:
def verify_id_token(id_token, app=None):
关于如何诊断(或者我是否遗漏了什么)的任何想法?
我能够在配备 Intel 芯片的 Mac 上运行以下 Docker 文件,但在配备 M1 的 Mac 上运行它时出现错误。然后我尝试了docker run --init --platform=linux/amd64 -e SPRING_PROFILES_ACTIVE=dev -e SERVER_FLAVOR=LOCAL_DEV -p 8080:8080 monolith-repo并且docker buildx build --platform=linux/amd64 -t monolith-repo .. 这让 Docker 容器运行,但在尝试调用 selenium 时出现以下错误:
org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:561)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:230)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:151)
at org.openqa.selenium.chromium.ChromiumDriver.<init>(ChromiumDriver.java:108)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:104)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:91)
at com.flockta.monolith.scraping.MakeNewWebpageScraperVersion2.getWebDriver(MakeNewWebpageScraperVersion2.java:176)
at com.flockta.monolith.scraping.MakeNewWebpageScraperVersion2.getWebpage(MakeNewWebpageScraperVersion2.java:52)
at com.flockta.monolith.job.ScrapingDataPipelineJob.getHtmls(ScrapingDataPipelineJob.java:308)
at com.flockta.monolith.job.ScrapingDataPipelineJob.processWebPage(ScrapingDataPipelineJob.java:168)
at com.flockta.monolith.job.ScrapingDataPipelineJob.processResult(ScrapingDataPipelineJob.java:153)
at com.flockta.monolith.job.ScrapingDataPipelineJob.processResult(ScrapingDataPipelineJob.java:59) …Run Code Online (Sandbox Code Playgroud) selenium google-chrome selenium-chromedriver docker apple-m1
我关注https://github.com/RobCherry/docker-chromedriver/blob/master/Dockerfile作为示例,我的docker文件中包含以下内容:
RUN CHROMEDRIVER_VERSION=`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE` && \
mkdir -p /opt/chromedriver-$CHROMEDRIVER_VERSION && \
curl -sS -o /tmp/chromedriver_linux64.zip http://chromedriver.storage.googleapis.com/$CHROMEDRIVER_VERSION/chromedriver_linux64.zip && \
unzip -qq /tmp/chromedriver_linux64.zip -d /opt/chromedriver-$CHROMEDRIVER_VERSION && \
rm /tmp/chromedriver_linux64.zip && \
chmod +x /opt/chromedriver-$CHROMEDRIVER_VERSION/chromedriver && \
ln -fs /opt/chromedriver-$CHROMEDRIVER_VERSION/chromedriver /usr/local/bin/chromedriver
RUN curl -sS -o - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \
echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list && \
apt-get -yqq update && \
apt-get -yqq install google-chrome-stable && \
rm -rf /var/lib/apt/lists/*
ENV DISPLAY :20.0
ENV …Run Code Online (Sandbox Code Playgroud) 我知道我可以用来docker container top查看容器的运行进程,但是是否有不同的命令来查看线程数?或者docker container top已经这样做了?
我正在查看https://openjdk.org/projects/jdk/19/,这似乎表明 OpenJDK 现在已于 2022 年 9 月 20 日正式可用。但是,当我查看当前的 Maven 映像时 ( https://hub .docker.com/_/maven),我找到 openJDK 17 (https://hub.docker.com/layers/library/maven/3.8.4-openjdk-17/images/sha256-d07c45c45755f0f90b779bad869467e602f1bfff4d0b5eb1ff73f2882bc38187)并打开JDK 18(https ://hub.docker.com/layers/library/maven/3.8.7-openjdk-18/images/sha256-1936d70bb3415a0d7e822ed484cdb4974593b195091c145b52ba7775003dc3f0?context=explore)但我没有看到 openJdk-19。我搜索了“openjdk” https://hub.docker.com/_/maven/tags?page=1&name=openjdk并查看了“最新”,但我找不到 Java 19。是否有这样的 openjdk maven 工件可能在不同的命名方案?我有什么遗漏的吗?
docker ×3
selenium ×2
apple-m1 ×1
firebase ×1
java ×1
java-19 ×1
kubernetes ×1
logging ×1
maven ×1
python-3.x ×1