WSL을 서버로 사용

WSL을 서버로 사용

최근에 WSL을 설치했는데, 잠시 플레이한 후 몇 가지 사항에 대해 궁금해졌습니다. 첫째, WSL을 서버로 처리할 수 있습니까? 예를 들어, 작은 mysql db를 호스팅하고 싶다면 문제가 되지 않을 것 같습니다. 하지만 다른 컴퓨터에서 해당 mysql 인스턴스에 연결할 수 있습니까? 어떻게 해야 합니까?

Visual Studio 2015에서 Linux용 C++ 애플리케이션을 개발하기 위해 이 하위 시스템을 대상으로 할 수 있나요? '원격 컴퓨터'에 어떻게 연결합니까? 이 경우 VS2015를 실행하는 것과 동일한 상자입니다.

아니면 웹 서버를 실행 중이고(가능한가요?) 크롬이나 유사한 도구를 사용하여 Windows 10 컴퓨터에서 해당 서버에 연결할 수 있다면 어떻게 될까요?

답변1

이는 Linux 머신처럼 작동합니다. 현재 LAMP 사이트를 운영하고 있는데 아주 빠릅니다. 도메인 설정에도 문제가 없습니다.

팁 및 고려해야 할 사항:

  • 외부 도메인을 전달하려면 Windows 방화벽을 올바르게 설정해야 합니다.
  • Windows 폴더에서 하위 시스템에 액세스하거나 편집하지 마십시오. (적어도 현재 반복에서는) 물건을 망칠 것입니다.
  • 여전히 Visual Studio(또는 다른 편집기)에서 파일을 편집하려면 WSL에 대한 SSH 액세스를 설정하고(아래 링크 참조) Apache 사이트를 원격 사이트로 추가하거나 git 저장소로 구성하면 됩니다(아래 링크 참조). 최선의 접근 방식)
  • WSL 전용으로 설계된 이 훌륭한 터미널 클라이언트를 사용하세요.https://github.com/goreliu/wsl-terminal
  • 다른 사용자 생성(기본값은 root)
  • aptPHP7을 사용하는 경우 기본 저장소에 포함되어 있지 않으므로 "수동"으로 설정해야 합니다 .

유용한 링크:

행운을 빕니다. 구체적인 질문을 게시해 주시면 제가 할 수 있는 데까지 도움을 드리겠습니다.

답변2

"apt-get install apache2"를 수행하고 "/etc/init.d/apache2 start" 서비스를 시작할 수 있었습니다. 이 시점에서 Windows 10 상자에서 로컬로 서버에 액세스할 수 있으며, Windows 방화벽을 열면 다른 컴퓨터에서도 액세스할 수 있습니다. 저는 mysql이나 PHP를 사용해 본 적이 없으며 WSL 개발자는 여전히 새로운 시스템 호출을 추가하고 있습니다(의사 tty는단지추가되었으며, 예를 들어 타이머_생성(timer_create)은 현재 지원되지 않으므로 일부 기능이 작동하지 않습니다. 예를 들어 Apache는 APR_TCP_DEFER_ACCEPT를 활성화할 수 없다고 경고합니다. 그러나 WSL 내에서 Tightvncserver, twm, firefox 및 xterm을 실행하고 VNC에서 원격으로 연결할 수 있었습니다(재미있습니다!).

WSL을 사용하여 Windows 10 상자를 시작할 때 upstart 또는 init.d가 자동으로 시작되지 않으므로 스크립트에서 또는 수동으로 서비스를 시작해야 한다는 점에 유의하는 것이 중요합니다.

네트워크 또는 직접 파일 액세스를 통해 WSL과 통신할 수 있습니다. WSL은 /mnt/c/를 통해 C: 드라이브에 액세스할 수 있으며, Windows 10은 c:\Users\%USERNAME%\AppData\Local\lxss를 통해 WSL에 액세스할 수 있습니다. /mnt/c에 파일을 쓰려면 bash를 관리자로 시작해야 합니다. WSL을 통해 Windows 실행 파일을 실행할 수 없습니다.

WSL은 Ubuntu 14.04 ELF 바이너리를 실행하므로Linux 개발 확장용 Visual C++(나는 시도하지 않았습니다).

행운을 빌어요!

관련 정보