投稿時間:2022-06-11 18:21:16 RSSフィード2022-06-11 18:00 分まとめ(26件)

カテゴリー等 サイト名等 記事タイトル・トレンドワード等 リンクURL 頻出ワード・要約等/検索ボリューム 登録日
python Pythonタグが付けられた新着投稿 - Qiita 【Python】変数を使って文字列を作ったり、文字列に変数を埋め込んだりする方法をいつも調べちゃうのでまとめてみた https://qiita.com/harutine/items/911743e1df083089b625 日常茶飯事 2022-06-11 17:43:51
js JavaScriptタグが付けられた新着投稿 - Qiita 思い立って3時間で画像ダウンロードサイトを立ち上げたときのデプロイ譚 https://qiita.com/minmin68/items/d491173edb2365ee8a5f 久し振り 2022-06-11 17:52:51
js JavaScriptタグが付けられた新着投稿 - Qiita 【SolidJS】オブジェクトの状態にはcreateStore https://qiita.com/shadowTanaka/items/419dc9e7db98971ff818 create 2022-06-11 17:35:20
Ruby Rubyタグが付けられた新着投稿 - Qiita bundler 2.2.x でのエラーを乗り越えたい https://qiita.com/sysdev/items/99153947283037bc2280 bundler 2022-06-11 17:00:53
Ruby Railsタグが付けられた新着投稿 - Qiita bundler 2.2.x でのエラーを乗り越えたい https://qiita.com/sysdev/items/99153947283037bc2280 bundler 2022-06-11 17:00:53
技術ブログ Developers.IO Azure BastionでS2S VPNを構成したAWS仮想マシンへリモート接続してみた https://dev.classmethod.jp/articles/azure-bastion-ip-base-s2s-vpn-to-aws/ expressroute 2022-06-11 08:54:55
技術ブログ Developers.IO RDS ProxyはSecrets ManagerのSecretsをどのように利用しているのか https://dev.classmethod.jp/articles/how-rdsproxy-uses-secrets-manager/ amazonauro 2022-06-11 08:41:07
技術ブログ Developers.IO 10分で作成できる AWS ParallelCluster の実行環境 AWS CloudShell 編 https://dev.classmethod.jp/articles/create-a-paralelcluster-environment-in-cloudshell/ awscloudshell 2022-06-11 08:10:43
海外TECH MakeUseOf 5 Best Free AI Text to Art Generators to Create an Image From What You Type https://www.makeuseof.com/ai-text-to-art-generators/ painting 2022-06-11 08:30:14
海外TECH DEV Community Create a Docker based Self Hosted GitHub runner Windows container https://dev.to/pwd9000/create-a-docker-based-self-hosted-github-runner-windows-container-3p7e Create a Docker based Self Hosted GitHub runner Windows container OverviewAll the code used in this tutorial can be found on my GitHub project docker github runner windows Welcome to Part of my series Self Hosted Docker GitHub Runners on Azure In part one of this series we will focus and look at how we can create a windows container image using docker that will essentially be a packaged up image we can use to deploy and run self hosted GitHub runners as containers We will focus more on the docker image itself and how we can build our image and run our image on a local server or VM running docker for windows and also scaling out multiple instances of our image using docker compose Part two will focus on building a Linux based Ubuntu image and in parts three and four we will look at how we can utilize Azure to store and run our containers in the cloud using technologies such as Azure Container Registry ACR Azure Container Instances ACI and Azure Container Apps ACA to run and scale our self hosted GitHub runners instead of using a VM based approach with docker running inside of a VM Setup environmentBefore building and running docker images we need to set a few things up first For my environment I will be using a Windows virtual machine running WSL Here is more information on running docker on Windows Server Things that we will need on our VM are Install a code editor such as VSCodeInstall and enable WSL For more information see how to enable WSL Open PowerShell as administrator and run wsl installAfter WSL is installed run Enable WindowsOptionalFeature Online FeatureName Microsoft Hyper V Containers AllNOTE You will need to reboot the system after adding the relevant features above Download and Install Docker Desktop For Windows This will automatically also install Docker Compose Once Docker Desktop For Windows is installed you need to switch to Windows containers Use the Docker item in the Windows system tray Prepare PowerShell Scripts used in image creationNow that we have Docker Desktop as well as Docker Compose installed and set to use Windows Containers we can start to build out our self hosted GitHub runner docker image Open VSCode you can clone the repo found on my GitHub project docker github runner windows which contains all the files or simply follow along with the following steps We will prepare a few PowerShell scripts that will be needed as part of our docker image creation Create a root folder called docker github runner windows and then another sub folder called scripts Inside of the scripts folder you can create the following three PowerShell scripts Cleanup Runners psBecause we will run and scale self hosted runners using docker docker compose dynamically using our image this script will be used to remove and unregister any old offline GitHub runner registrations against our GitHub repository when we scale containers up and down based on our needs This PowerShell script uses GitHub CLI If you are running this script locally ensure you have GitHub CLI installed This script invokes GitHub CLI Pre installed on container image Param Parameter Mandatory false string owner env GH OWNER Parameter Mandatory false string repo env GH REPOSITORY Parameter Mandatory false string pat env GH TOKEN Use with token to pass in a PAT token on standard input The minimum required scopes for the token are repo read org Alternatively gh will use the authentication token found in environment variables See gh help environment for more info To use gh in GitHub Actions add GH TOKEN to env on Docker run Docker run e GH TOKEN myPatToken gh auth login with token pat Cleanup Look for any old stale dockerNode registrations to clean up Windows containers cannot gracefully remove registration via powershell due to issue For this reason we can use this scrip to cleanup old offline instances registrations runnerBaseName dockerNode runnerListJson gh api H Accept application vnd github v json repos owner repo actions runners runnerList ConvertFrom Json InputObject runnerListJson runnersForeach runner in runnerList try If runner name like runnerBaseName and runner status eq offline write host Unregsitering old stale runner runner name gh api method DELETE H Accept application vnd github v json repos owner repo actions runners runner id catch Write Error Exception Message Remove PAT token after cleanup pat null env GH TOKEN null Install Choco psThis script will be used to install Chocolatey Windows package manager into our docker image when we build the image securityProtocolSettingsOriginal System Net ServicePointManager SecurityProtocoltry Set TLS then TLS then TLS finally SSL Use integers because the enumeration values for TLS and TLS won t exist in NET even though they are addressable if NET is installed NET is an in place upgrade System Net ServicePointManager SecurityProtocol bor bor bor catch Write Warning Unable to set PowerShell to use TLS and TLS check NET Framework installed If you see underlying connection closed or trust errors try the following upgrade to NET Framework specify internal Chocolatey package location set env chocolateyDownloadUrl prior to install or host the package internally use the Download PowerShell method of install See for all install options Invoke Expression New Object System Net WebClient DownloadString System Net ServicePointManager SecurityProtocol securityProtocolSettingsOriginal start psThis script will be used as our ENTRYPOINT script and will be used to bootstrap our docker container when we start run a container from the image we will be creating The main purpose of this script is to register a new self hosted GitHub runner instance on the repo we pass into the docker environment each time a new container is spun up or scaled up from the image This script invokes GitHub CLI Already installed on container image To use this entrypoint script run Docker run e GH TOKEN myPatToken e GH OWNER orgName e GH REPOSITORY repoName d imageNameParam Parameter Mandatory false string owner env GH OWNER Parameter Mandatory false string repo env GH REPOSITORY Parameter Mandatory false string pat env GH TOKEN Use with token to pass in a PAT token on standard input The minimum required scopes for the token are repo read org Alternatively gh will use the authentication token found in environment variables See gh help environment for more info To use gh in GitHub Actions add GH TOKEN to env on Docker run Docker run e GH TOKEN myPatToken gh auth login Get Runner registration Token jsonObj gh api method POST H Accept application vnd github v json repos owner repo actions runners registration token regToken ConvertFrom Json InputObject jsonObj token runnerBaseName dockerNode runnerName runnerBaseName New Guid Guid replace substring try Register new runner instance write host Registering GitHub Self Hosted Runner on owner repo config cmd unattended url owner repo token regToken name runnerName Remove PAT token after registering new instance pat null env GH TOKEN null Start runner listener for jobs run cmd catch Write Error Exception Message finally Trap signal with finally cleanup When docker container is stopped remove runner registration from GitHub Does not currently work due to issue Perform manual cleanup of stale runners using Cleanup Runners ps config cmd remove unattended token regToken NOTE This PowerShell script uses GitHub CLI to register new agents onto the GitHub Repository we specify Thus we will load GitHub CLI into our container when we build to be part of the container image later on Prepare dockerfile to build image Windows Now with our scripts ready we can get to the fun part Building the windows docker image Navigate back to the root folder and create a file called dockerfile dockerfileThis dockerfile contains the instructions to build our container image BASE IMAGE INFO Using servercore insider edition for compacted size For compatibility on your host running docker you may need to use a specific tag E g the host OS version must match the container OS version If you want to run a container based on a newer Windows build make sure you have an equivalent host build Otherwise you can use Hyper V isolation to run older containers on new host builds The default entrypoint is for this image is Cmd exe To run the image docker run mcr microsoft com windows servercore insider build revision tag reference Win FROM mcr microsoft com windows servercore insider WinFROM mcr microsoft com windows servercore insider input GitHub runner version argumentARG RUNNER VERSIONLABEL Author Marcel L LABEL Email pwd hotmail co uk LABEL GitHub LABEL BaseImage servercore insider LABEL RunnerVersion RUNNER VERSION SHELL powershell Command ErrorActionPreference Stop Set working directoryWORKDIR actions runner Install chocolateyADD scripts Install Choco ps RUN Install Choco ps Wait Remove Item Install Choco ps Force Install Git GitHub CLI Azure CLI and PowerShell Core with Chocolatey add more tooling if needed at build RUN choco install y git gh powershell core azure cli Download GitHub Runner based on RUNNER VERSION argument Can use Docker build build arg RUNNER VERSION x y z RUN Invoke WebRequest Uri env RUNNER VERSION actions runner win x env RUNNER VERSION zip OutFile actions runner zip Expand Archive Path actions runner zip DestinationPath Remove Item actions runner zip Force Add GitHub runner configuration startup scriptADD scripts start ps ADD scripts Cleanup Runners ps ENTRYPOINT pwsh exe start ps Let s take a closer look and see what this docker build file will actually do step by step WinFROM mcr microsoft com windows servercore insider The FROM instruction will tell our docker build to fetch and use a windows OS base image Because windows base images can be fairly large we are using servercore insider edition because the size is compact and optimized For compatibility on your host VM running docker you may need to use a different tag mcr microsoft com windows servercore insider build revision The host OS version must be higher than the base image OS version You can use Hyper V isolation to run older containers on new host builds also Because docker is running on my Windows host build version I m using a container OS version of mcr microsoft com windows servercore insider Just make sure that your host build version running docker is higher than the base image build version you are using in the dockerfile when building the image You can use the following Servercore insider tag reference NOTE To check your host OS build version you can run the following powershell command System Environment OSVersion Version input GitHub runner version argumentARG RUNNER VERSIONLABEL Author Marcel L LABEL Email pwd hotmail co uk LABEL GitHub LABEL BaseImage servercore insider LABEL RunnerVersion RUNNER VERSION Next we define an input argument using ARG This is so that we can instruct the docker build command to load a specific version of the GitHub runner agent into the image when building the image Because we are using a windows container ARG will create a system variable env RUNNER VERSION which will be accessible to PowerShell inside the container In addition we can also label our image with some metadata using LABEL to add more information about the image You can change these values as necessary NOTE LABEL RunnerVersion RUNNER VERSION this label is dynamically updated from the build argument we will be passing into the docker build command later SHELL powershell Command ErrorActionPreference Stop Set working directoryWORKDIR actions runnerWe then configure PowerShell as our default SHELL for running scripts or commands and also set a working directory named actions runner with WORKDIR This directory will contain our GitHub runner binaries and scripts under the path C actions runner inside of the windows container Install chocolateyADD scripts Install Choco ps RUN Install Choco ps Wait Remove Item Install Choco ps Force Install Git GitHub CLI Azure CLI and PowerShell Core with Chocolatey add more tooling if needed at build RUN choco install y git gh powershell core azure cliThe ADD instruction will copy our Install Choco ps script into the working directory and RUN the script which will install Chocolatey into the image and then cleanup remove the script The second RUN will then uses Chocolatey to install Git GitHub CLI Azure CLI and PowerShell Core into the image You can add any additional tooling you want to add to the image at build time here NOTE Try not to install too many packages at build time to keep the image as lean compact and re usable as possible You can always use a GitHub Action later in a workflow when running the container and use Chocolatey which is now loaded into the image container to install more software I will also be showing how we can add more software and tooling e g Terraform later on when we run our container using a GitHub Action Download GitHub Runner based on RUNNER VERSION argument Can use Docker build build arg RUNNER VERSION x y z RUN Invoke WebRequest Uri env RUNNER VERSION actions runner win x env RUNNER VERSION zip OutFile actions runner zip Expand Archive Path actions runner zip DestinationPath Remove Item actions runner zip ForceThe next RUN instruction will run a series of PowerShell commands to download and extract a specific version of the GitHub runner binaries based on the build argument ARG value passed into the container build process that sets the environment variable env RUNNER VERSION as described earlier Add GitHub runner configuration startup scriptADD scripts start ps ADD scripts Cleanup Runners ps ENTRYPOINT pwsh exe start ps The last section will ADD the Cleanup Runners ps as well as an ENTRYPOINT script named start ps into the working directory The entrypoint script will run each time a new container is created It acts as a bootstrapper that will based on specific environment variables we pass into the Docker Run command such as env GH OWNER env GH REPOSITORY and env GH TOKEN to register the containers self hosted runner agent against a specific repository in the GitHub organisation we specify Note that the ENTRYPOINT script will be run using PowerShell Core with pwsh exe Remember we used Chocolatey to install PowerShell Core as part of the image creation Now that we have our scripts as well as our dockerfile ready we can build our image NOTE We can build and run the windows container images using docker desktop or docker compose I will show both methods next Building the Docker Image Docker Desktop Windows In VSCode terminal or a PowerShell session navigate to the root folder containing the docker file and run the following command Remember we need to pass in a build argument to tell docker what version of the GitHub runner agent to use in the image creation GitHub Runner Releases Build container docker build OPTIONS PATHdocker build build arg RUNNER VERSION tag docker github runner win The build process can take a little while to complete Once the process is complete you will see the new image in Docker Desktop for Windows under images Run the Docker Image Docker Desktop Windows To run and provision a new self hosted GitHub runner windows container from the image we just created run the following command We have to pass in some environment variables using the e option to specify the PAT Personal Access Token GitHub Organisation and Repository to register the runner against Run container from image docker run e GH TOKEN myPatToken e GH OWNER orgName e GH REPOSITORY repoName d image nameSee creating a personal access token on how to create a GitHub PAT token PAT tokens are only displayed once and are sensitive so ensure they are kept safe The minimum permission scopes required on the PAT token to register a self hosted runner are repo read org Tip I recommend only using short lived PAT tokens and generating new tokens whenever new agent runner registrations are required After running this command under the GitHub repository settings you will see a new self hosted GitHub runner This is our docker container You will also be able to see the running container under Docker Desktop for Windows under Containers Lets test our new docker container self hosted GitHub runner by creating a GitHub workflow to run a few GitHub Actions by installing Terraform on the running container You can also use this test workflow from my GitHub project docker github runner windows Create a new workflow under the GitHub repository where you deployed the self hosted runner where it is running name Local runner teston workflow dispatch jobs testRunner runs on self hosted defaults run shell pwsh steps uses actions checkout v name Setup Terraform run choco install terraform y name Refresh Environment run refreshenv name Display Terraform Version run terraform version name Display Azure CLI Version run az versionNotice that the workflow runs on self hosted and that the default shell is set to PowerShell Core shell pwsh because we loaded PowerShell core into our docker image we created earlier We can now use the following step to install Terraform using Chocolatey which we also loaded into our docker image when we built it earlier steps name Setup Terraform run choco install terraform y name Display Terraform Version run terraform versionTo spin up additional docker runners containers we just simply re run the docker command we ran earlier Each run will create an additional runner instance container Run container from image docker run e GH TOKEN myPatToken e GH OWNER orgName e GH REPOSITORY repoName d image nameNext we will look at stopping destroying our running docker instances and cleaning up the registrations for all the self hosted runners registered against our GitHub repository To stop and remove all running containers simply run docker stop docker ps aq amp amp docker rm docker ps aq You will notice that all the running containers under Docker Desktop for Windows are no longer there but we still have the registrations against our GitHub repository which now shows as Offline To unregister or cleanup these stale registrations just run the script we created earlier under the scripts folder called Cleanup Runners ps If you are running this script locally ensure you have GitHub CLI installed as the script invokes GitHub CLI to remove the registration scripts Cleanup Runners ps owner orgName repo repoName pat myPatToken NOTE for convenience the same cleanup script is also copied to each container under the working directory C actions runner Cleanup Runners ps After running the cleanup script you will notice that the stale offline registrations against our repository are now removed Next we will look how we can build the image and also run our image at scale using docker compose Building the Docker Image Docker Compose Windows As we saw earlier it is pretty easy to build our image using docker commands but we can also use docker compose with a configuration file to make things a bit easier So following on navigate to the root folder again that contains the dockerfile we created earlier and create a new YAML file called docker compose yml version services runner image pwd github runner win latest build context args RUNNER VERSION environment GH TOKEN GH TOKEN GH OWNER GH OWNER GH REPOSITORY GH REPOSITORY In the docker compose configuration file we can set out the parameters for our docker image by specifying things like the image name GitHub runner version as well as our environment variables Note that we have to set these environment variables on our host windows machine in order for docker compose to be able to interpret the values specified on the YAML file inside of the symbols This can easily be done by running the following PowerShell commands on the windows host set system environment with env or use env file to pass GH TOKEN GH OWNER GH REPOSITORY env GH OWNER Org Owner env GH REPOSITORY Repository env GH TOKEN myPatToken NOTE You can also use an environment file instead to pass environment variables onto the docker compose build process using a docker compose yml file like this instead version services runner image pwd github runner win latest build context args RUNNER VERSION env file variables envThis method however requires us to create another file in the root of our working folder called variables env and populating this file with our environment variables like so GH OWNER orgNameGH REPOSITORY repoNameGH TOKEN myPatTokenIMPORTANT Don t use this method and don t commit this file to source control if you are using sensitive values and storing your code in a remote source control repository Add this environment file to your gitignore file if needed so that it is not pushed into source control Which ever method you decide to use you can kick off the build process after creating this docker compose yml file by running the following PowerShell command docker compose buildOnce the process is complete you will see the new image in Docker Desktop for Windows under images Run and scale the Docker Image Docker Compose Windows What s really nice about using docker compose is that we can easily scale the amount of runners we want to use simply by running the following command docker compose up scale runner dBecause all of our configuration and details are kept in environment variables and the docker compose YAML file we don t really have to run long docker commands as we did earlier and we simply scale the amount of runners we want by specifying the scale parameter NOTE The scale runner d parameter is based on the docker compose file services setting which in our case is called runner services runner To scale down to one runner we can simply rerun the command as follow docker compose up scale runner dTo stop and remove all running containers simply run docker compose stopdocker rm docker ps aq As described earlier you will notice that all the running containers under Docker Desktop for Windows are no longer there but still have the registrations against our GitHub repository which now shows as Offline Simply re run the cleanup script we ran earlier under the scripts folder called Cleanup Runners ps scripts Cleanup Runners ps owner orgName repo repoName pat myPatToken In this part of the blog series we have covered how you can build and run self hosted Github runners as windows containers using docker desktop and docker compose In part two of this blog series we will focus on building a Linux based Ubuntu image container instead for our self hosted GitHub runners I hope you have enjoyed this post and have learned something new You can find the code samples used in this blog post on my Github page ️ AuthorLike share follow me on GitHub Twitter LinkedIn Marcel LFollow Microsoft DevOps MVP Cloud Solutions amp DevOps Architect Technical speaker focussed on Microsoft technologies IaC and automation in Azure Find me on GitHub 2022-06-11 08:24:34
ニュース @日本経済新聞 電子版 対北朝鮮ミサイル訓練再開 日米韓防衛相、台湾にも言及 https://t.co/kEFdJWzAqA https://twitter.com/nikkei/statuses/1535542912909713409 防衛相 2022-06-11 08:42:14
ニュース @日本経済新聞 電子版 ダービー馬ドウデュース、凱旋門賞へ 武豊は10度目挑戦 https://t.co/K2iGJw71T7 https://twitter.com/nikkei/statuses/1535540261115543552 武豊 2022-06-11 08:31:41
ニュース @日本経済新聞 電子版 「ロシア軍はウクライナ軍に比べ10~15倍の大砲を持っている」とウクライナ国防省幹部。ロシアはあと1年戦争を継続できると推測し、今後の戦況は欧米がどれだけ武器を供与するかにかかっていると述べました。 https://t.co/ZyVGinErVG https://twitter.com/nikkei/statuses/1535539853357629440 「ロシア軍はウクライナ軍に比べ倍の大砲を持っている」とウクライナ国防省幹部。 2022-06-11 08:30:04
海外ニュース Japan Times latest articles In first, Japan, U.S. and South Korea stress importance of ‘peace and stability’ in Taiwan Strait https://www.japantimes.co.jp/news/2022/06/11/national/us-japan-south-korea-defense-ministers/ In first Japan U S and South Korea stress importance of peace and stability in Taiwan StraitIt was the first time that the Taiwan issue was referred to in defense ministerial talks among the three nations 2022-06-11 17:52:47
海外ニュース Japan Times latest articles Boris Johnson’s endless battle to survive https://www.japantimes.co.jp/news/2022/06/11/world/politics-diplomacy-world/boris-johnson-battle-survive/ reboots 2022-06-11 17:38:31
海外ニュース Japan Times latest articles Iran has lessons on grim survival for Russia under sanctions https://www.japantimes.co.jp/news/2022/06/11/business/russia-ukraine-war-iran-sanctions-lessons/ Iran has lessons on grim survival for Russia under sanctionsThe founder of one of the first Iranian ad agencies to focus on social media has some advice for Russian businesses You ll adapt and survive 2022-06-11 17:22:15
海外ニュース Japan Times latest articles North Korea promotes nuclear envoy as Kim vows ‘power for power’ military https://www.japantimes.co.jp/news/2022/06/11/asia-pacific/choe-son-hui-north-korea-nuclear-weapons/ North Korea promotes nuclear envoy as Kim vows power for power militaryChoe Son Hui long a key member of Pyongyang s team negotiating over its nuclear program with the United States was named foreign minister state news 2022-06-11 17:14:16
ニュース BBC News - Home China warns Taiwan independence would trigger war https://www.bbc.co.uk/news/world-asia-61768875?at_medium=RSS&at_campaign=KARANGA independence 2022-06-11 08:35:21
ニュース BBC News - Home Jacques O'Neill: Castleford Tigers release player to go on Love Island https://www.bbc.co.uk/sport/rugby-league/61769276?at_medium=RSS&at_campaign=KARANGA Jacques O x Neill Castleford Tigers release player to go on Love IslandCastleford Tigers release Jacques O Neill to allow him to pursue another opportunity of heading in to the Love Island villa 2022-06-11 08:28:25
北海道 北海道新聞 ひきこもり24世帯に1人 東京・江戸川区が実態調査 https://www.hokkaido-np.co.jp/article/692368/ 実態調査 2022-06-11 17:01:00
北海道 北海道新聞 上川管内102人感染 新型コロナ https://www.hokkaido-np.co.jp/article/692371/ 上川管内 2022-06-11 17:10:00
北海道 北海道新聞 道南在住74人感染 函館は51人 新型コロナ https://www.hokkaido-np.co.jp/article/692361/ 新型コロナウイルス 2022-06-11 17:09:59
北海道 北海道新聞 「まだ外す気には…」 北見市民、マスク「着用」9割 https://www.hokkaido-np.co.jp/article/692312/ 北見市民 2022-06-11 17:03:47
北海道 北海道新聞 藤田さいき、単独首位守る 女子ゴルフ第3日 https://www.hokkaido-np.co.jp/article/692370/ 単独首位 2022-06-11 17:02:00
北海道 北海道新聞 日米韓防衛相、台湾の安定強調 3カ国会談で初言及 https://www.hokkaido-np.co.jp/article/692369/ 防衛相 2022-06-11 17:01:00
ビジネス 東洋経済オンライン 「いつも遅刻ギリギリ」になる子を変える凄いコツ 簡単な「しくみ」作りでラクに乗り越えられる! | 怒らなくても子育てがラクになる「しくみ」 | 東洋経済オンライン https://toyokeizai.net/articles/-/594271?utm_source=rss&utm_medium=http&utm_campaign=link_back 子どもたち 2022-06-11 17:30:00

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)