안녕하세요. 김혁님.
해당 에러는 특정 패키지가 설치되어 있지 않거나 버전이 다를 때 나타나는 에러 메시지입니다.
에러의 전문을 첨부해주시면 원인을 파악하는데 도움이 될 것 같습니다.
참고: https://linoxide.com/how-to-install-laravel-on-ubuntu-20-04/
두 문제 모두 아파치 설정 수정을 통해 해결할 수 있을 것 같습니다.
.htaccess 파일을 수정해 설정을 바꿀 수 있습니다.
URL에서 index.php 없이 동작시키기 위한 방법은 아래의 링크를 참고해주세요.
(바로가기)
설정한 주소 외의 요청을 지정한 페이지로 이동시키려면 RequestRule을 설정해야 합니다. 자세한 방법은 아래 링크를 참고해주세요.
(바로가기)
container1에서 다음과 같은 단계를 진행합니다.
/etc/mysql/mysql.conf.d/mysqld.cnf 파일을 열고 (vim 에디터 등 사용) bind-address = 127.0.0.1 부분 앞에 #을 붙여서 #bind-address = 127.0.0.1이 되도록 수정하여 주석처리 해줍니다. (원격접속이 가능하게 하기 위해, LISTEN IP 대역을 로컬호스트로 제한하고 있는 설정을 주석처리)
터미널에 service mysql restart 명령을 실행하여 mysql 재시작
mysql shell에 접속하여 GRANT ALL ON *.* TO root@'%' IDENTIFIED BY 'password'; 쿼리를 실행해줍니다. ('password' 부분은 원격접속 시 사용할 패스워드로 적절하게 변경)
FLUSH PRIVILEGES; 쿼리를 실행해줍니다.
구름IDE 상단메뉴 [컨테이너] - [포트포워딩 설정]에서 유형 MySQL 선택 후 [등록]을 눌러 포트를 열어줍니다.
등록 후에 [IP]와 [외부 포트]를 확인해둡니다. (container2에서 container1의 mysql로 접속 시 사용할 정보)
conatainer2에서 다음과 같은 단계를 진행합니다.
터미널에 mysql -h[IP] -P[외부 포트] -p[password] 명령을 실행하여 정상적으로 접속이 되는지 확인합니다. 예를 들면 mysql -h3.34.1.253 -P59891 -ppassword와 같은 형식의 명령입니다.