묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨개발자를 위한 쉬운 도커
도커 컴포즈: volumes는 어떻게 적는 건가요
도커 컴포즈 강의 중 스크린샷에 대한 질문이 2가지 있습니다.Q1. 해당 스크린샷의 코드는 어디가면 찾아볼 수 있나요?깃헙의 Daintree-henry 유저의 리포지터리에서 찾아보려고 해도 찾아볼 수가 없어서 질문드립니다.Q2. Yaml 코드에서 Volumes는 왜 2번 나오는 건가요?컨테이너 2개 각각의 image 바로 밑에 volumes라는 항목이 이미 존재하잖아요. (e.g. postgres_primary_data:/bitnami/postgresql)그런데 밑에서 보이는 또 다른 volumes 코드는 왜 존재하는 건가요?volumes: postgres_primary_data: postgres_standby_data:
-
미해결AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법
rds read replica 접속 에러
시작 템플릿 - 유저 데이터에 write와 read 설정하고 오토스케일링 돌렸는데 에러가 납니다. 시작 템플릿에서 테스트로 인스턴스 생성해서 확인해보니 write는 문제 없는데 read에서 에러가 나옵니다. (여러번 설정해봄)ssh 접속해서 아래부분 실행 시 에러... 무슨 문제 일까요?java -jar build/libs/aws-msa-monolithic-prac-0.1.jar \ --spring.datasource.write.jdbc-url=jdbc:postgresql://goopang-rds-db.*****.ap-northeast-2.rds.amazonaws.com:5432:goopang_database \ --spring.datasource.write.username=postgres \ --spring.datasource.write.password=**** \ --spring.datasource.read.jdbc-url=jdbc:postgresql://goopang-rds-db-read-replica.****.ap-northeast-2.rds.amazonaws.com:5432:goopang_database \ --spring.datasource.read.username=postgres \ --spring.datasource.read.password=****2024-08-31T02:10:00.841Z ERROR 2333 --- [ main] j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'javax.persistence.jdbc.url', 'hibernate.connection.url', or 'hibernate.dialect') 2024-08-31T02:10:00.907Z ERROR 2333 --- [ main] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'javax.persistence.jdbc.url', 'hibernate.connection.url', or 'hibernate.dialect') at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1770) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:598) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:520) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1156) ~[spring-context-6.0.9.jar!/:6.0.9] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:931) ~[spring-context-6.0.9.jar!/:6.0.9] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:608) ~[spring-context-6.0.9.jar!/:6.0.9] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) ~[spring-boot-3.1.0.jar!/:3.1.0] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:733) ~[spring-boot-3.1.0.jar!/:3.1.0] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:435) ~[spring-boot-3.1.0.jar!/:3.1.0] at org.springframework.boot.SpringApplication.run(SpringApplication.java:311) ~[spring-boot-3.1.0.jar!/:3.1.0] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1305) ~[spring-boot-3.1.0.jar!/:3.1.0] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1294) ~[spring-boot-3.1.0.jar!/:3.1.0] at com.prac.monolithic.awsmsamonolithicprac.AwsMsaMonolithicPracApplicationKt.main(AwsMsaMonolithicPracApplication.kt:13) ~[classes!/:0.1] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[na:na] at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[aws-msa-monolithic-prac-0.1.jar:0.1] at org.springframework.boot.loader.Launcher.launch(Launcher.java:95) ~[aws-msa-monolithic-prac-0.1.jar:0.1] at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[aws-msa-monolithic-prac-0.1.jar:0.1] at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65) ~[aws-msa-monolithic-prac-0.1.jar:0.1] Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'javax.persistence.jdbc.url', 'hibernate.connection.url', or 'hibernate.dialect') at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:277) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:239) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:216) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.boot.model.relational.Database.<init>(Database.java:45) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.getDatabase(InFlightMetadataCollectorImpl.java:229) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>(InFlightMetadataCollectorImpl.java:197) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:166) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1380) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1451) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:66) ~[spring-orm-6.0.9.jar!/:6.0.9] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:376) ~[spring-orm-6.0.9.jar!/:6.0.9] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-6.0.9.jar!/:6.0.9] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-6.0.9.jar!/:6.0.9] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:352) ~[spring-orm-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1816) ~[spring-beans-6.0.9.jar!/:6.0.9] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1766) ~[spring-beans-6.0.9.jar!/:6.0.9] ... 24 common frames omitted Caused by: org.hibernate.HibernateException: Unable to determine Dialect without JDBC metadata (please set 'javax.persistence.jdbc.url', 'hibernate.connection.url', or 'hibernate.dialect') at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:188) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:87) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:274) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:34) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:119) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:264) ~[hibernate-core-6.2.2.Final.jar!/:6.2.2.Final] ... 39 common frames omitted 2024-08-31 02:10:01,061 - cc_scripts_user.py[WARNING]: Failed to run module scripts-user (scripts in /var/lib/cloud/instance/scripts) 2024-08-31 02:10:01,064 - util.py[WARNING]: Running module scripts-user (<module 'cloudinit.config.cc_scripts_user' from '/usr/lib/python3.9/site-packages/cloudinit/config/cc_scripts_user.py'>) failed Cloud-init v. 22.2.2 finished at Sat, 31 Aug 2024 02:10:01 +0000. Datasource DataSourceEc2. Up 122.75 seconds [root@ip-10-0-1-8 aws-operation-prac]#
-
미해결DevOps를 위한 Docker 가상화 기술 (Private Harbor Registry)
replicas 가 생기지 않는 문제
docker stack services my-stack 이러한 명령어로 스택에 있는 서비스를 확인했을 때, replicas가 생기지 않는 문제가 발생합니다. docker service logs my-stack_nginx으로 로그를 확인했을 때, "my-stack_nginx.1.e52u87cn5fsb@65b1999ee81f | exec /docker-entrypoint.sh: invalid argument" 라는 오류 메시가 발생합니다.
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
Docker compose 관련 질문입니다
안녕하세요 재성님! 좋은 강의 너무 잘 듣고 있습니다.다름이 아니라 재성님 강의를 듣고 제 프로젝트에 spring boot mysql 을 함께 컴포즈 파일로 작성하고 있는데localhost:8080으로 접속하org.springframework.web.servlet.resource.NoResourceFoundException: No static resource .이라는 에러 문구가 나옵니다.현재 프로젝트에서는.html 파일을 전혀 사용하지 않아서 이 에러의 원인을 잘 못찾고 있습니다.docker-compose 파일 첨부합니다.감사합니다.services: my-server: build: . ports: - 8080:8080 # my-db의 컨테이너가 생성되고 healthy 하다고 판단 될 때, 해당 컨테이너를 생성한다. depends_on: my-db: condition: service_healthy my-db: image: mysql environment: MYSQL_ROOT_PASSWORD: 저희 비밀번호 MYSQL_DATABASE: mydb # MySQL 최초 실행 시 mydb라는 데이터베이스를 생성해준다. volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306 healthcheck: test: [ "CMD", "mysqladmin", "ping" ] # MySQL이 healthy(정상 작동 하는지)한 지 판단할 수 있는 명령어 interval: 5s # 5초 간격으로 체크 retries: 10 # 10번까지 재시도
-
미해결대세는 쿠버네티스 (초급~중급편)
vagrant up 문의
vagrant up을 하면 다음과 같은 오류가 발생합니다.해결 방법이 궁금합니다.. 혹시 몰라 컴퓨터 사양도 첨부하였습니다.확인해주셔서 감사합니다.
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
한번만 도와주세요 오류를 못찾겠습니다.
사이드 바에 skill이랑 project만 페이지 오류가발생합니다. skill 들어갔을떄 오류 로그는 project 들어갔을떄 오류 로그 깃허브 주소:https://github.com/kimauto/portfolio-kimauto이렇게 오류가 뜨면 No static resource admin/skill저는 skill 컨트롤러,서비스,DTO 가서 제가 코드 실수를 했나 먼저 확인하고 용백님 깃헙 소스코드랑 비교하면서 오류 체크를 했습니다. 이렇게 오류를 접근하는 방식이 맞나요? 무슨 문제일까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
[Docker] Kafka, Kafka connect 도커로 실행하기
Kafka, Kafka Connecet를 설치하기 부담스러우신 분들을 위해 제가 직접 이미지를 만들었습니다.https://hub.docker.com/r/didrkd684/inflearn-spring-cloud-kafka DB까지 docker compose로 사용하고 싶으신 분들은 아래 링크를 참고해 주시기 바랍니다.https://github.com/chocolaggibbiddori/spring-cloud/blob/main/kafka-docker/docker-compose.yml
-
미해결대세는 쿠버네티스 (초급~중급편)
설치 v1.27(win/mac intel) 문의
xshell이 윈도우만 지원하는 것 같은데, mac intel에서는 어떤 걸 써야할까요?구글링해보니 open ssh를 사용하라고 하는데, 대체가 가능한건지 모르겠네요 mac intel 사용지 XShell 대체방법도 가이드되면 좋을 거 같습니다
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
Access denied for user ‘root’@’localhost’ (using password:YES)
compose.ymlservices:instagram-server:image: 420787877062.dkr.ecr.ap-northeast-2.amazonaws.com/instargram-serverports:- 8080:8080depends_on:my-db:condition: service_healthymy-cache-server:condition: service_healthymy-db:image: mysqlenvironment:MYSQL_ROOT_PASSWORD: 00000000MYSQL_DATABASE: mydbvolumes:- ./mysql_data:/var/lib/mysqlports:- 3306:3306healthcheck:test: [ "CMD", "mysqladmin", "ping" ]interval: 5sretries: 10my-cache-server:image: redisports:- 6379:6379healthcheck:test: [ "CMD", "redis-cli", "ping" ]interval: 5sretries: 10 이렇게 yml을 설정하고docker inspect 명령어를 사용하여 mysql 정보를 gpt 한테 물어봤더니 아래와 같은 답변이 있었습니다. 현재 MySQL 컨테이너의 상태는 “healthy”로 보이며, 전체적으로 Docker Compose 설정이 잘 작동하고 있다. 하지만 MySQL의 Healthcheck가 Access denied for user 'root'@'localhost' (using password: YES) 오류 메시지를 출력하고 있다. 이는 MySQL이 root 사용자로 접속을 시도할 때 비밀번호 인증에 실패했다는 것을 의미한다. 이를 해결하기 위해서, 비밀번호를 ' 로 감싸서 String으로 인식하도록 유도 하기도 했지만 여전히 문제는 해결되지 않고 있습니다. 구글링을 해본 결과 도커 볼륨과 연관있는 것 같지만 정확한 이유를 모르겠습니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
설치 오류 문의드려요
https://kubetm.github.io/k8s/02-beginner/cluster-install-case6/위 페이지를 보면서 설치 중인데vagrant up 명령어시 아래와 같이 에러가 뜨네요(참고로 mac 인텔입니다)==> k8s-master: Box 'rockylinux/8' could not be found. Attempting to find and install... k8s-master: Box Provider: virtualbox k8s-master: Box Version: >= 0==> k8s-master: Loading metadata for box 'rockylinux/8' k8s-master: URL: https://vagrantcloud.com/rockylinux/8==> k8s-master: Adding box 'rockylinux/8' (v9.0.0) for provider: virtualbox k8s-master: Downloading: https://vagrantcloud.com/rockylinux/boxes/8/versions/9.0.0/providers/virtualbox/unknown/vagrant.boxDownload redirected to host: dl.rockylinux.orgAn error occurred while downloading the remote file. The errormessage, if any, is reproduced below. Please fix this error and tryagain. The requested URL returned error: 404 그리고 추가로 강의를 보면 도커하고 쿠버네티스 설치 내용이 있나요?건너뛰고 바로 XSHELL부터 설치하는 것 같아 문의드립니다.
-
미해결실습으로 배우는 선착순 이벤트 시스템
쿠폰 발급 유저 흐름에 대한 질문
쿠폰이 발급되고 바로 사용하려는 유저가 있다면 어떻게해야하나요? 실무에서 보통의 경우 어떻게 처리하는지 궁금한데요.예를 들어서, 쿠폰이 생성되려면 시간이 다소 소요될 수 있다는 안내 문구와 같은 정책으로 안고가는지.. 아니면 다른 좋은 방법이 있는지 궁금합니다.강의 내용 흐름레디스를 통해서 싱글 스레드로 쿠폰 개수 확인제한 범위 안이라면 클라이언트에게 쿠폰 발급 성공 응답비동기로 처리량을 조절하면서 쿠폰 데이터를 저장실제 유저가 아직 쿠폰 발급이 안되었는데, 쿠폰 사용 시도이 경우 어떻게 대응하는지 궁금합니다.
-
해결됨개발자를 위한 쉬운 도커
아예 Linux Ubuntu PC에서 실습을 따라하려고 하는데
아예 ubuntu Linux PC에서 따라하려고 하는데 Docker Desktop이랑 많이 혼동이 될까요?
-
미해결[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
선생님 users.resolver.spec코드좀 봐주세요!
import { Test } from '@nestjs/testing'; import { UsersService } from '../users.service'; import { IContext } from 'src/commons/interfaces/context'; import { Request, Response } from 'express'; // 주로 DB 작업할 때 가짜DB 만들 때 사용함 class MockUsersService { mydb = []; create({ email, password, name, age }): string { this.mydb.push({ email, password, name, age }); const token = 'token'; return token; } } describe('UsersResolver', () => { let usersService: UsersService; beforeEach(async () => { const usersModule = await Test.createTestingModule({ providers: [ UsersService, { provide: UsersService, useClass: MockUsersService, }, ], }).compile(); usersService = usersModule.get<UsersService>(UsersService); }); describe('fetchUser', () => { it('유저 정보 찾기', () => { const mockRequest: Request & { user?: { id: string } } = { user: { id: '12345' }, } as Request & { user: { id: string } }; const mockResponse: Response = {} as Response; const mockContext: IContext = { req: mockRequest, res: mockResponse, }; expect(mockContext.req.user).toStrictEqual({ id: '12345' }); }); }); describe('createUser', () => { it('유저 등록하기', async () => { const mockToken = 'token'; const mockUser = { email: 'aaa@aaa.com', password: '1234', name: '정중식', age: 12, }; const result = await usersService.create({ ...mockUser }); // 반환 값이 mockToken과 일치하는지 확인 expect(result).toBe(mockToken); }); }); }); 강의에서는 app.controller.spec랑 똑같이하시면됩니다~ 하고 넘어가셔서 챗지피티랑 손잡고 짜봣는데요.. 어떤가요? 맞게했나요?..개념도 생소하고 코드짜는게 넘 어렵네요.. 챗지피티 이자식은 목업클래스 안만들어주고 지름길 같은jest.fn()같은 메서드로 목업함수 만들어주고.... 선생님 답변기다리겠씁니다!
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
백엔드 서버 외부 접속 차단
백엔드를 "https://api.example.com" 프론트엔드를 "https://example.com"이렇게 배포했습니다. 그런데 백엔드 서버는 example.com 이 주소에서 api 요청만 가능하고, https://api.example.com/graphql 은 주소창에 검색해도 접속 못하게 하고 싶습니다. 어떻게 해야할까요?
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
ProjectSkill과 Skill 객체 생성 관련 질문있습니다.
테스트코드 작성하는 강의를 막 마치고, html '/test' 생성하여 확인하는 강의를 진입하여 듣던중,test만 돌리다 오랜만에 datainitilizer가 불리도록 run을 하니,org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataInitializer': Invocation of init method failedCaused by: org.hibernate.TransientPropertyValueException: Not-null property references a transient value - transient instance must be saved before current operation : com.mkim.portfolio.domain.entity.ProjectSkill.skill -> com.mkim.portfolio.domain.entity.Skill 이런 에러가 발생하였습니다.테스트코드 작성 강의전에는 정상적으로 datainitializer 호출되었고, 테스트 케이스도 전부 패스한 상황이라 무엇이 문제인가 계속 확인을 하는데 이해한 바로는 ProjectSkill이 Skill 엔티티를 참조해야하지만 아직 생성이 안된 상태라 발생하는것처럼 이해하였는데, val java = Skill(name = "Java", type = SkillType.LANGUAGE.name, isActive = true) val kotlin = Skill(name = "Kotlin", type = SkillType.LANGUAGE.name, isActive = true) val python = Skill(name = "Python", type = SkillType.LANGUAGE.name, isActive = true) val spring = Skill(name = "Spring", type = SkillType.FRAMEWORK.name, isActive = true) . . . skillRepository.saveAll( mutableListOf( java, kotlin, spring, . . . ) . ... ..... project1.skills.addAll( mutableListOf( ProjectSkill(project = project1, skill = java), ProjectSkill(project = project1, skill = spring), ProjectSkill(project = project1, skill = mysql), ProjectSkill(project = project1, skill = redis) ) )이렇게 작성하여 부르면 에러가 나지만val skills = mutableListOf( Skill(name = "Java", type = SkillType.LANGUAGE.name, isActive = true), Skill(name = "Kotlin", type = SkillType.LANGUAGE.name, isActive = true), Skill(name = "Python", type = SkillType.LANGUAGE.name, isActive = true), Skill(name = "Spring", type = SkillType.FRAMEWORK.name, isActive = true), Skill(name = "Django", type = SkillType.FRAMEWORK.name, isActive = true), Skill(name = "MySQL", type = SkillType.DATABASE.name, isActive = true), Skill(name = "Redis", type = SkillType.DATABASE.name, isActive = true), Skill(name = "Kafka", type = SkillType.TOOL.name, isActive = true) ) skillRepository.saveAll(skills) . ... ..... project1.skills.addAll( mutableListOf( ProjectSkill(project = project1, skill = skills[0]), // Java ProjectSkill(project = project1, skill = skills[3]), // Spring ProjectSkill(project = project1, skill = skills[5]), // MySQL ProjectSkill(project = project1, skill = skills[6]) // Redis ) ) 이와 같이하면 에러가 살아집니다...무엇이 달라 차이를 만드는지가 너무 궁금하여 질문 남겨요감사합니다, 전체 현재까지 코드 깃허브
-
미해결공인 쿠버네티스 자격증 잘 준비하는 법 (CKA, CKAD, CKS)
katacoda.com 사이트는 더 이상 접근이 안되는 것 같습니다.
katacoda.com 사이트는 더 이상 접근이 안되는 것 같습니다.
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
테스트코드 실패
안녕하세요, 테스트코드 결과가 계속 실패되는데... 이유를 찾지 못하여 질문 드립니다. BeforeAll에서 projects를 디버그찍어 skills안의 skill확인 하면 제대로 들어간것이 보이는데, 테스트에 진입을 하면 skills가 0이 되는데...다른 변수들은 다 들어가고 skills만 0이 되는 상황입니다... 어디서 부터 실수를 만든건지 파악이 안되어 도움을 요청드립니다. 아래 현재 문제가 있는 코드 남깁니다.Git 저장소
-
미해결DevOps를 위한 Docker 가상화 기술 (Private Harbor Registry)
docker는 어떻게 macos에서 리눅스를 실행할 수 있는것일까요?
vmware는 os전체를 가상화하고docker는 hostos의 커널을 공유하고 os가 아닌 일부분만 가상화 한다고 했는데...어떻게 macos에서 리눅스가 실행될 수 있는것일까요?이론적으로 같은 운영체제만 가상화 가능할것 아닌가요?
-
해결됨처음 시작하는 도커와 컨테이너
깃허브 액션에서 deploy가 실패해요
1. 무엇을 하고 싶으신가요? 2. 언제, 어떤 오류가 발생하시나요? 3. 어떤 시도를 해보셨나요? 동일하게 파일을 넣고 simple-cicd를 넣고 실행시키는데 도커 배포에서 실패합니다.err: #0 building with "default" instance using docker driver23err: #1 [internal] load build definition from Dockerfile24err: #1 transferring dockerfile: 2B done25err: #1 DONE 0.0s26err: ERROR: failed to solve: failed to read dockerfile: open Dockerfile: no such file or directory27err: Error response from daemon: No such container: 84337131928err: Unable to find image 'cokeholic-kim/docker-cicd-test:latest' locally29err: docker: Error response from daemon: pull access denied for cokeholic-kim/docker-cicd-test, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.30err: See 'docker run --help'. 위의 배포파일을 서버로 복사하는부분은 잘 실행되었는지 똑같이 터미널에서 ls로 확인했을때 폴더와 파일은 잘 옮겨져있는데 docker배포부분에서 실패하는것같습니다.4. 작성한 코드를 공유해주세요.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
Docker mysql 오류 해결 방법
***질문은 아니고 해결 방법 공유합니다!***docker-compose.yml 파일에서백엔드 service를 올리기 전에 데이터베이스부터 먼저 올리면 됩니다! 아래처럼version: '3.7' # "컴퓨터들" services: # 컴퓨터 이름 my-database: image: mysql:8.0 environment: MYSQL_DATABASE: 'myproject' MYSQL_ROOT_PASSWORD: 'root' ports: - 3306:3306 # 컴퓨터 이름 my-backend: build: context: . dockerfile: Dockerfile volumes: - ./src:/myfolder/src ports: - 3000:3000 env_file: - ./.env.dockermy-database랑 my-backend 서로 순서만 바꿔주면 됩니다.저는 그렇게 해서 됐습니다..! 조금이나마 도움이 되길 바랍니다.