Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
My Redmine Gen.2を支えるインフラストラクチャー
Search
Takayuki Yoshioka
September 18, 2020
Technology
2.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
My Redmine Gen.2を支えるインフラストラクチャー
Takayuki Yoshioka
September 18, 2020
More Decks by Takayuki Yoshioka
See All by Takayuki Yoshioka
RedmineをAIで効率的に使う検証
yoshiokacb
0
260
AWSで実現する進化する WEBサービス(SaaS)
yoshiokacb
0
77
AWSで実現する進化するWEBサービス(SaaS)の裏話
yoshiokacb
0
190
モノリスウェブアプリケーションのクラウド最適化について - SaaSの運用 -
yoshiokacb
1
1.5k
ホスティングサービスのインフラ環境を再構築!
yoshiokacb
0
4.8k
Scalable structure for AWS
yoshiokacb
1
1.4k
GDG Cloud Shimane #02
yoshiokacb
0
75
GCPUG-Shimane #04 開催レポート
yoshiokacb
0
75
EC2からECSへ移行を始めたお話
yoshiokacb
2
8.1k
Other Decks in Technology
See All in Technology
30座EKS, 180次升級淬煉的EKS Upgrade Skill 的歷程
eric8230
0
140
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
450
SREは、MCPとAutopilotをこう使え!
kazumax55
2
760
2026-09-10 【Snowflake World Tour Tokyo 2026】dbt Core と Snowflake で実現する多層的なデータガバナンス / Multi-Layered Data Governance Powered by dbt Core and Snowflake
civitaspo
0
390
AIによるクリエイティブ生成を行う上での試行錯誤
plaidtech
PRO
0
110
iOSDC Japan 2026 day1 TrackC 10:50
feedtailor
1
150
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
340
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
150
Sigmaユーザーのための有用リソース一挙公開 & Sigmaで使えるMCP #sigma_ucj /useful-resources-for-sigma-computing-users-and-mcps-with-sigma
shinyaa31
0
230
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
110
20260912_スクフェス三河
kgnkhkr
0
360
安心して変更できるWebフロントエンドの作り方
pirosikick
4
2.2k
Featured
See All Featured
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
930
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
420
[SF Ruby Conf 2025] Rails X
palkan
2
1.4k
Test your architecture with Archunit
thirion
2
2.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Designing Powerful Visuals for Engaging Learning
tmiket
1
540
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
590
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.2k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
670
Transcript
.Z3FENJOF(FOΛ ࢧ͑ΔΠϯϑϥετϥΫνϟʔ 'BS&OE5FDIOPMPHJFT$PSQPSBUJPO
ࣗݾհɾձࣾհ αʔϏεհ
٢Ԭོߦ 5BLBZVLJ:PTIJPLB ॴଐ ϑΝʔΤϯυςΫϊϩδʔʢגʣ ίϛϡχςΟʔ .BUTVFSC +"846(4IJNBOF ͖ͳαʔϏε "84"NQMJGZ
ϑΝʔΤϯυςΫϊϩδʔגࣜձࣾ ॴࡏ ίΞϏδωε 044ؔ࿈ ౡࠜݝদߐࢢʢ݄ઃཱʣ 4BB4ఏڙ 3FENJOFվળ׆ಈɺ3FENJOF+1ͷӡӦ
w݄αʔϏε։࢝ wࠃ༷ࣾʹ͝ఏڙ w3FENJOFͷίϛολʔ͕ࡏ੶ w࠾༻ύονͷҎ্͕ฐࣾ։ൃ
None
֓ཁ w ݄͔Β.Z3FENJOFͷΠϯϑϥڥΛ࠶ߏங͠ ͖ͯ·ͨ͠ɻ݄ͦͯ͠ʹ.Z3FENJOF(FOͱ ͯ͠ϦϦʔε͞Ε͕ͯܦա͠·ͨ͠ɻ w ࠓճΠϯϑϥʹ༻͞Ε͍ͯΔٕज़ͱαʔϏεʢओʹ "84ʣͷ͍͔ͭ͘ΛϐοΫΞοϓ͠ɺօ༷ʹ͝հͰ͖ Εͱࢥ͍·͢ɻ w
ҙʣίϯςφʢ%PDLFSʣؔ࿈ͷ͕ଟ͘ͳΔ͔ͱࢥ͍ ·͕͢͝ཧղ͍ͩ͘͞ɻ
ΞδΣϯμ શମߏ ར༻αʔϏε ߏஙͷϙΠϯτ 3FENJOF 3BJMT
ͷίϯςφԽ Ϛϧνςφϯτʹ͍ͭͯ
શମߏ
SBJMTDPOTPMF SBLFUBTLʜ
None
ར༻αʔϏε
.BOBHFE4FSWJDF "84ͷൣғͷͳΔ͍͘αʔϏεΛબ αʔόʢཧʣ ωοτϫʔΫʢཧʣ 04ͷཧ ϛυϧΣΞ ԽɾόοΫΞοϓ ΞϓϦέʔγϣϯ ར༻ʢ"1*ʣ &$
'BSHBUF -BNCEB FUDʜ 3%4 3PVUF 4 FUDʜ ͳΔ͘͜ͷลΓͷαʔϏεΛ͏
ίϯςφʢ%PDLFSʣͷ ΦʔέετϨʔγϣϯαʔϏεͷબ
"84&$4ʢ"NB[PO&MBTUJD$POUBJOFS4FSWJDFʣ $MVTUFS 'BSHBUFͷ߹ωʔϜεϖʔεͷΑ͏ͳͷ 4FSWJDF λεΫͷཧɺεέδϡʔϧϯάͳͲ 5BTL σϓϩΠͷ࠷খ୯ҐʢෳͷίϯςφΛཧʣ 'BSHBUF
'BSHBUFͷಛ w αʔόʔϨεͳͷͰϗετ04ͷཧෆཁɻ ʢηΩϡϦςΟͷύονͯͳͲʣ w εέʔϧ࣌ͷΩϟύγςΟʔΛ༨ʹ࣋ͨͳͯ͘ྑ͍ɻ w 44)ͰϩάΠϯͰ͖ͳ͍ɻ
ͦͷଞɺओཁαʔϏε Step Functions EC2 Lambda Aurora CodeBuild CodeCommit CodePipeline CloudFormation
S3 S3 Glacier CloudWatch SNS SQS 3FENJOF पลγεςϜ Athena Kinesis Data Firehose AppSync Elastic Container Registry Application Auto Scaling CloudTrail Systems Manager API Gateway Amplify Secrets Manager AWS WAF Fargate ECS ELB Route53 DynamoDB RDS σϓϩΠɾ$*$% αʔϏεΞΧϯτཧ
ߏஙͷϙΠϯτ 3FENJOFʢ3BJMTʣͷίϯςφԽ ϚϧνςφϯτͷΞʔΩςΫνϟ
ߏஙͷϙΠϯτ 3FENJOFʢ3BJMTʣͷίϯςφԽ ϚϧνςφϯτͷΞʔΩςΫνϟ
ίϯςφʹ͍ͭͯ
3FENJOFΛಈ͔ͨ͢Ίʹ ඞཁͳͷ w 3VCZϥϯλΠϜʢ3VCZʣ w ґଘϛυϧΣΞʢ*NBHF.BHJD 1PTUHSF42-ʣ w ґଘϥΠϒϥϦʢSBJMT SNBHJDL
QHʣ ґଘؔΛؚΊ࣮ͨߦڥΛҰͭͷΠϝʔδʹ·ͱΊͯ͠·͏ɻ Πϝʔδ͝ͱσϓϩΠͰ͖Δʂ
ग़యɿIUUQTXXXEPDLFSDPNSFTPVSDFTXIBUDPOUBJOFS ίϯςφͱԾϚγϯͷൺֱ
ίϯςφͷϝϦοτ ։ൃڥͱຊ൪ڥͷҧ͍͕ͳ͘ͳΔ *OGSBTUSVDUVSFBT$PEFʹ͍͍ͯΔ $*$%ͱ૬ੑ͕ྑ͍ʢ%FW0QTʹ͍͍ͯΔʣ
ίϯςφͷར༻ͷҙ ΠϝʔδΛCVJME͢Δ࡞ۀཧର͕૿͑Δ ঢ়ଶΛ࣋ͨͤΔߏ͍͠ʢσʔλͷӬଓԽʣ
3FENJOFίϯςφԽ
3FENJOFͰߟྀ͕ඞཁͳ͜ͱ ʢӬଓԽ͕ඞཁͳσʔλʣ w%#ʢσʔλϕʔεʣ wϩά wఴϑΝΠϧ
%#ʢσʔλϕʔεʣʹ͍ͭͯ 3%4"VSPSB1PTUHSF42-ޓΤσΟγϣϯ
-PHͷѻ͍ 4JEFDBS1BUUFSOʢίϯςφΛೋͭ༻ʣͰ ϩάऩू༻ίϯςφʢqVFOUEʣΛ༻ͯ͠ϩάͷऩू
ఴϑΝΠϧ "NB[PO4 "NB[PO&'4 ΞϓϦέʔγϣϯͷมߋ͕ෆཁ ΞϓϦέʔγϣϯͷมߋ͕ඞཁ ʢϓϥάΠϯͳͲʣ ϥϯχϯάίετ͕͍҆ ϥϯχϯάίετ͕ߴΊ ͦͦ։ൃ࣌'BSHBUFͰ&'4࿈ܞ͕Ͱ͖ͳ͔ͬͨɻ ީิͷൺֱ
ఴϑΝΠϧ ఴϑΝΠϧͷอଘઌΛ4ʹͰ͖Δ 1MVHJOΛ։ൃʢSFENJDB@Tʣ
։ൃཪʢۤ࿑ʣ pMFT ఴϑΝΠϧ͕อଘ UNQUIVNCOBJMT ఴϑΝΠϧͷαϜωΠϧ͕อଘɻ UNQJNQPSUT $47Πϯϙʔτ࣌ʹҰ࣌ϑΝΠϧ͕อଘɻ ᵓᴷᴷBQQ ᴹᵓᴷᴷDPOUSPMMFST ᴹᵓᴷᴷIFMQFST
ᴹᵓᴷᴷNPEFMT ᴹᵋᴷᴷWJFXT ᵓᴷᴷpMFT ᴹᵓᴷᴷYYYYYYY ᴹᵓᴷᴷYYYYYYY ᴹᵋᴷᴷYYYYYYY ᵋᴷᴷUNQ ᵓᴷᴷDBDIF ᵓᴷᴷJNQPSUT ᵋᴷᴷUIVNCOBJMT
https://github.com/redmica/redmica_s3
ߏஙͷϙΠϯτ 3FENJOFʢ3BJMTʣͷίϯςφԽ ϚϧνςφϯτͷΞʔΩςΫνϟ
ϗεςΟϯάαʔϏε ʢ4BB4ʣ ϏδωεϞσϧͷ γϯάϧςφϯτΑΓϚϧνςφϯτͰ୯ՁΛ͍͑ͨ ʢސ٬αʔόݫ͍͠ɻෳͷސ٬ͰαʔόΛڞ༗͢Δʣ
࣮ํ๏ "QBDIF 1BTTFOHFSΛબ ϓϩηε͝ͱʹڥมΛସ͑Δʂ
Ϛϧνςφϯτ 3FENJOFΛεςʔτϨεʹઃܭ %#αʔόΛར༻ɻϩάͱఴϑΝΠϧΛ4อଘ ઃఆใʢEBUBCBTFZNM TZNMʣʹڥมΛར༻͢Δɻ "QBDIFͷࢠϓϩηε͝ͱʢυϝΠϯ͝ͱʣʹઃఆใʢڥมʣ͕มΘΔɻ
ʢଓ͢Δ%#ɺఴϑΝΠϧͷอଘઌ͕มΘΔʣ ιʔείʔυͷڞ༗Խ͕࣮ݱ
ߏਤ
ߏਤ %PDLFSىಈ࣌ʹ4͔Β ڥมͷใΛऔಘ
db: name: [db_name] user: [user_name] password: [password] s3: bucket: [user_bucket]
folder: [user_folder] property: sub_domain: [sub_domain] limit_ips: - ‘192.168.xx.xx' - '192.168.xx.xx' ઃఆใ4ʹอଘ ˞αϯϓϧΠϝʔδ
ߏਤ %PDLFSىಈ࣌ʹ4͔Β ڥมͷใΛऔಘ
$POGϑΝΠϧΛੜ ˞αϯϓϧΠϝʔδ <VirtualHost *:80> ServerName siteA.example.jp DocumentRoot /var/lib/siteA/public RailsEnv production
PassengerEnabled on SetEnv RAILS_DB db001 SetEnv RAILS_DB_USERNAME dbuser001 SetEnv RAILS_DB_PASSWORD xxxxxxxx SetEnv S3_FOLDER_NAME user001 ... </VirtualHost>
ߏਤ %PDLFSىಈ࣌ʹ4͔Β ڥมͷใΛऔಘ 4JUF"ΞΫηε
3FENJOFͷઃఆϑΝΠϧͷมߋ # database.yml production: adapter: postgresql database: <%= ENV['RAILS_DB'] %>
username: <%= ENV['RAILS_DB_USERNAME'] %> password: <%= ENV['RAILS_DB_PASSWORD'] %> host: <%= ENV['RAILS_DB_HOST'] %> # s3.yml production: bucket: <%= ENV['S3_BUCKET_NAME'] %> folder: <%= ENV['S3_FOLDER_NAME'] %> ˞αϯϓϧΠϝʔδ
ߏਤ %PDLFSىಈ࣌ʹ4͔Β ڥมͷใΛऔಘ 4JUF"ΞΫηε
༨ஊ
ӡ༻ฤ w ΞϓϦέʔγϣϯͷσϓϩΠํ๏ʢখنͳมߋʣ w ΞϓϦέʔγϣϯͷσϓϩΠํ๏ʢ.JHSBUJPO͋Γͷେنͳมߋʣ w αʔϏεΞΧϯτʢ͓٬༷ʣͷ৽نొɾมߋɾఀࢭɾσʔλআ
·ͱΊ ར༻αʔϏε ˠαʔόϨεɺϑϧϚωʔδυαʔϏεΛબɻ 3FENJOF 3BJMT ͷίϯςφԽ ˠఴϑΝΠϧͷѻ͍4ϓϥάΠϯͰղܾɻ
Ϛϧνςφϯτʹ͍ͭͯ ˠݻ༗ͷσʔλͷഉআͱιʔείʔυͷڞ༗Խɻ
w݄αʔϏε։࢝ wࠃ༷ࣾʹ͝ఏڙ w3FENJOFͷίϛολʔ͕ࡏ੶ w࠾༻ύονͷҎ্͕ฐࣾ։ൃ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ