
Docker까지 준비하고 나니 이제 정말 서버에 올리는 일만 남았다.
물론 여기까지 오면서 이미 몇 번이나
“이제 거의 다 한 거 아닌가?”
라고 생각했다.
그리고 그 생각은 대체로 틀렸다.
이번에는 Railway를 이용해서 프로젝트를 실제 서버에 올려보기로 했다.
GitHub에 올린 코드가 실제로 실행되기 시작했다
지금까지 GitHub는 내게 주로 소스 코드를 저장하는 곳이었다.
코드를 수정하고,
git add .
git commit
git push
하면 GitHub에 변경 내용이 올라간다.
여기까지는 익숙했다.
그런데 Railway와 연결하고 나니 조금 달라졌다.
내가 GitHub에 올린 코드를 가져가서 서버에서 빌드하고, 실제로 실행까지 해준다.
화면에는 하나씩 상태가 표시됐다.
Build.
Deploy.
처음에는 그냥 기다렸다.
솔직히 이런 화면을 보고 있으면 할 수 있는 게 별로 없다.
성공하기를 기다리는 수밖에 없다.
그러다 하나씩 완료 표시가 붙기 시작했다.
그리고 마지막 하나가 남았다.
그게 끝났을 때 화면을 보면서 잠깐 멈췄다.
진짜 된 건가?
localhost가 아닌 주소가 생겼다
Railway에서 서비스 주소가 하나 생겼다.
지금까지 내 프로젝트에 접속하려면 항상 이런 주소를 사용했다.
localhost:8081
내 컴퓨터에서 Spring Boot를 실행해야만 접속할 수 있는 주소다.
그런데 이번에는 처음 보는 인터넷 주소가 생겼다.
주소를 복사해서 브라우저에 넣었다.
화면이 떴다.
처음에는 사실 별 감흥이 없었다.
내 컴퓨터에서 수십 번 보던 화면이었으니까.
그래서 잠시 후 이런 생각이 들었다.
잠깐, 지금 Spring Boot 안 켰는데?
내 컴퓨터에서 서버를 실행하지 않아도 서비스가 열리고 있었다.
그제야 조금 실감이 났다.
휴대폰으로 들어가봤다
그래도 아직 의심스러웠다.
같은 컴퓨터에서 접속해서 그런가 싶었다.
그래서 휴대폰에서도 주소를 열어봤다.
떴다.
사진도 선택할 수 있었다.
내 컴퓨터와 상관없는 기기에서도 내가 만든 서비스에 접속할 수 있었다.
그리고 여기서 내가 했던 생각은 꽤 단순했다.
그럼 이제 나 말고 다른 사람도 쓸 수 있는 건가?
맞았다.
URL만 보내주면 된다.
친구에게도 보낼 수 있고,
아내에게도 보내서 한번 써보라고 할 수 있다.
#10에서 처음 고민했던 문제가 드디어 해결됐다.
내 컴퓨터에서는 잘 되는데
다른 사람은 어떻게 쓰지?
이제는 적어도 접속은 할 수 있었다.
별거 아닌 주소 하나인데 느낌이 달랐다
개발하다 보면 localhost 화면을 정말 많이 본다.
회사에서도 그렇고,
혼자 공부할 때도 그렇고,
Spring Boot를 실행하고 브라우저를 열어서 기능을 확인한다.
그래서 localhost에서 화면이 뜨는 건 이제 별로 특별한 일이 아니다.
그런데 인터넷 주소 하나가 생긴 것뿐인데 느낌이 꽤 달랐다.
이제 내가 만든 걸 설명하면서
“내 컴퓨터에서는 잘 돼요.”
라고 말할 필요가 없다.
그냥 주소를 보내면 된다.
누군가 실제로 들어와서 눌러볼 수 있다.
아직 부족한 기능도 많고,
디자인도 더 손봐야 하고,
서비스라고 부르기에는 작은 프로젝트다.
그래도 이 순간부터는 적어도 나 혼자만 볼 수 있는 프로그램은 아니게 됐다.
그런데 주소가 조금 길었다
배포에 성공하고 나니까 사람 마음이 또 이상해졌다.
몇 시간 전까지만 해도
“제발 실행만 돼라.”
라고 생각했는데,
막상 실행되고 나니까 주소가 눈에 들어왔다.
Railway에서 만들어준 주소는 서비스 이름이 들어간 긴 주소였다.
갑자기
이거 좀 더 예쁘게 못 바꾸나?
라는 생각이 들었다.
알아보니 내가 원하는 주소를 사용하려면 결국 도메인이 필요했다.
예를 들면
security.nocklock.com
같은 주소다.
그런데 나는 아직 도메인을 가지고 있지 않았다.
그래서 일단 멈췄다.
지금 중요한 건 주소를 예쁘게 만드는 게 아니라 서비스가 실제로 동작하는지 확인하는 것이었다.
이런 것도 개발하면서 계속 배우는 것 같다.
뭔가 하나 해결하면 바로 다음에 하고 싶은 게 생긴다.
그런데 전부 한 번에 하려고 하면 끝이 없다.
이제 진짜 테스트를 받을 수 있게 됐다
여기까지 개발하면서 테스트는 대부분 내가 했다.
당연히 내가 만든 기능이니까 사용 방법도 알고 있다.
어떤 이미지를 넣어야 하는지도 알고,
어디를 눌러야 하는지도 알고,
결과가 어떻게 나와야 하는지도 어느 정도 예상한다.
문제는 그래서 내가 테스트하면 내가 생각한 방식으로만 사용하게 된다는 것이다.
이제 URL이 생겼으니 상황이 달라졌다.
프로젝트를 처음 보는 사람에게 주소 하나만 보내고,
별다른 설명 없이 한번 써보라고 할 수 있다.
그리고 실제로 서비스를 다시 사용하다가 하나를 발견했다.
개인정보가 없는 사진에서는 이미지 보호하기 기능이 제대로 동작하지 않았다.
개발하면서 여러 번 테스트했는데도 못 본 문제였다.
배포에 성공하자마자 버그를 발견한 셈이다.
조금 허무하기도 했는데,
오히려 이때부터 진짜 테스트가 시작된 것 같았다.
localhost 밖으로 나오는 것까지는 성공했다.
그다음은
내가 아닌 사람이 사용해도 괜찮은 서비스인지 확인하는 일이었다.
'RE:개발자' 카테고리의 다른 글
| 개발자인 내가 테스트하면 이상하게 잘 된다 | RE:개발자 #13 (0) | 2026.09.25 |
|---|---|
| 서버에 올리면 끝인 줄 알았다 — Docker를 처음 제대로 써봤다 | RE:개발자 #11 (0) | 2026.09.22 |
| 내 컴퓨터에서는 잘 되는데, 다른 사람도 쓸 수 있어야 했다 | RE:개발자 #10 (0) | 2026.09.21 |
| 기능이 된다고 제품이 되는 건 아니었다 | RE:개발자 #9 (0) | 2026.09.20 |
| RE:개발자 — 다시 개발자가 되어가는 기록 | 전체 목차 (0) | 2026.09.20 |