개발/WEB

Vue μ‹œμž‘ν•˜κΈ° (3)| ν”„λ‘œμ νŠΈ λΉŒλ“œ, S3둜 배포

happilee12 2022. 3. 7. 14:00
λ°˜μ‘ν˜•

πŸ“„ λͺ©μ°¨

     

     

    Vue ν”„λ‘œμ νŠΈλŠ” Amazon S3λ₯Ό ν™œμš©ν•΄μ„œ κ°„λ‹¨ν•˜κ²Œ 무료둜 배포할 수 μžˆμŠ΅λ‹ˆλ‹€.

    이번 κΈ€μ—μ„œλŠ” Amazon S3 λ₯Ό ν†΅ν•œ ν”„λ‘œμ νŠΈ 배포 방법을 μ„€λͺ…ν•˜κ² μŠ΅λ‹ˆλ‹€.

     

    1. S3 버킷 λ§Œλ“€κΈ°

    S3μ—μ„œ 배포λ₯Ό μœ„ν•œ μƒˆλ‘œμš΄ 버킷을 λ§Œλ“€μ–΄μ€λ‹ˆλ‹€.

    여기에 vueλ₯Ό λΉŒλ“œν•œ 정적 νŒŒμΌμ„ μ—…λ‘œλ“œν•˜μ—¬ ν˜ΈμŠ€νŒ…μ„ ν•  μ˜ˆμ •μž…λ‹ˆλ‹€. 

     

    2. λ²„ν‚·μ˜ 퍼블릭 μ ‘κ·Ό ν—ˆμš©

     

    버킷 > κΆŒν•œ 탭에 κ°€μ„œ 버킷 정책을 public read ν—ˆμš©μœΌλ‘œ νŽΈμ§‘ν•΄μ€λ‹ˆλ‹€.

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "PublicRead",
                "Effect": "Allow",
                "Principal": "*",
                "Action": [
                    "s3:GetObject",
                    "s3:GetObjectVersion"
                ],
                "Resource": "arn:aws:s3:::delivery-mgmt-host/*"
            }
        ]
    }

     

    버킷 정보에 νΌλΈ”λ¦­μ—‘μ„ΈμŠ€ κ°€λŠ₯μ΄λΌλŠ” νƒœκ·Έκ°€ μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

     

    3. vue ν”„λ‘œμ νŠΈ λΉŒλ“œ

    > npm run build

    슀크립트λ₯Ό μ‹€ν–‰ν•˜λ©΄ ν”„λ‘œμ νŠΈκ°€ λΉŒλ“œλ˜λ©΄μ„œ distλΌλŠ” 폴더가 μƒκΉλ‹ˆλ‹€.

     

    4. S3에 μ—…λ‘œλ“œ

    λΉŒλ“œλ‘œ μƒμ„±λœ dist폴더λ₯Ό S3에 μ—…λ‘œλ“œν•΄μ€λ‹ˆλ‹€. 

    폴더 μΆ”κ°€ > dist선택 ν•˜λ©΄, dist폴더 ν•˜μœ„μ— νŒŒμΌλ“€μ΄ μ—…λ‘œλ“œ λ©λ‹ˆλ‹€.

    μ΄λ ‡κ²Œ 말고 κ°œλ³„ 폴더, νŒŒμΌλ“€μ„ μΆ”κ°€ν•΄μ£Όμ‹œκ±°λ‚˜, dist폴더λ₯Ό μ—΄μ–΄ μ•ˆμ— μ•„μ΄ν…œμ„ μ „μ²΄μ„ νƒν•˜μ‹œκ³  λ“œλž˜κ·Έμ•€λ“œλ‘­μœΌλ‘œ μ—…λ‘œλ“œν•΄μ£Όμ„Έμš”. 

     

    5. S3버킷에 ν˜ΈμŠ€νŒ… μ„€μ •

    버킷 > 속성 λ©”λ‰΄μ—μ„œ 제일 μ•„λž˜μͺ½μœΌλ‘œ 내렀가보면 정적 μ›Ή μ‚¬μ΄νŠΈ ν˜ΈμŠ€νŒ… νŽΈμ§‘μ΄λΌλŠ” 메뉴가 μžˆμŠ΅λ‹ˆλ‹€.

     

    μ•„λž˜ 두가지λ₯Ό μ„€μ •ν•΄μ€λ‹ˆλ‹€.

     

    μ •μ • μ›Ή μ‚¬μ΄νŠΈ ν˜ΈμŠ€νŒ… :ν™œμ„±ν™”

    인덱슀 λ¬Έμ„œ : index.html

     

    μ €μž₯ν•˜κ³  λ‚˜μ˜€λ©΄, 정적 μ›Ή μ‚¬μ΄νŠΈ ν˜ΈμŠ€νŒ… νŽΈμ§‘ 메뉴에 ν˜ΈμŠ€νŒ…λ˜κ³  μžˆλŠ” url이 λ³΄μ—¬μ§‘λ‹ˆλ‹€.

     

    url을 ν΄λ¦­ν•˜λ©΄ ν˜ΈμŠ€νŒ…μ΄ μ •μƒμ μœΌλ‘œ λ˜λŠ” 것을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

     

    λ°˜μ‘ν˜•