77

Click here to load reader

Docker 로 Linux 없이 Linux 환경에서 개발하기

Embed Size (px)

Citation preview

PowerPoint

Linux Linux

Great Technology For Great [email protected]

2Windows / macOS OS linux

3 : Linux Windows / macOS GUI PC/ /

01

Docker linux Great Technology For Great Games2016 Dev Day

Docker

6DockerLinux */ (=) VM (=)

7 (?)VM (, ) docker

8

9OS Windows / macOS (2016-07)Docker For Mac And Windows Is Now Generally Available And Ready For ProductionWindows :Windows Containers on Windows Server (Windows Server 2016; )

C++ Docker

11 : Dockerfile docker : (FROM) ( ; RUN ) (EXPOSE) (VOLUME) (ENTRYPOINT )

12Example: Ubuntu 16.04 (xenial)g++,cmake /workspace 8000

docker build --rm -t cpp-builder .(Dockerfile )

13Example: (2)

14Example: . crow :

02

GUI

Great Technology For Great Games2016 Dev Day

16Goal GUI

17Kitematic: docker run

18Kitematic: GUI

19 ?Dockerfile Volume: OS / Docker , GUI Windows / macOS ,

20SourceTree (git client)

21GitHub Desktop

22 PC (/) docker (?)

23Docker + IDE ?Windows / macOS GUI GUI : (+ ) (, , ) ?

03

GUI On WindowsGreat Technology For Great Games2016 Dev Day

VisualStudio + Docker

26Windows: VisualStudio

27Visual C++ for Linux DevelopmentMicrosoft linux VS C++ Windows + VisualStudio

28 ?VisualStudio linux (SSH) / Windows linux

29 g++, gdb, ( /)SSH + SSH volume SSH 22

30 DockerfileSSH Volume *

31Windows: VisualStudio (1) docker volume Port docker ssh

32Windows: VisualStudio (2) (volume ), :,

33Windows: misc.Docker : privileged Docker For Windows

Example:C++

35Example ( Dockerfile) g++, gdb Kitematic VisualStudio // ()

36Example: Kitematic (ports)

37Example: Kitematic (volume)

38Example: Kitematic (advanced)

39Example: VS ( , , CWD, ) / /

40Example: VS (1/5)

41Example: VS (2/5)

42Example: VS (3/5)

43Example: VS (4/5)

44Example: VS (5/5)

45Example: Linux

46 Visual C++ for Linux beta / Docker for Windows volume ( )

47: VS VisualStudio //

, (?)

04

GUI On macOSGreat Technology For Great Games2016 Dev Day

Nuclide + Docker

50macOS: Nuclide in Action

51macOS: NuclideFacebook OpenSource IDE (macOS / linux)Atom IDE , (lldb) , C++ / Hack / Python / JavaScript / Native app. / ReactNative / Android / iOS

52 ?IDE SSH / JSON RPC buck lldb

53 node.js, python, clang, SSH SSH 22, 9090-9093 volume

54macOS: Nuclide (1) docker volume Nuclide

55macOS: Nuclide (2)Docker SSH Atom (remote project) docker : (lldb) (clang ): buck

56macOS: misc.Docker : privileged Nuclide / port (9090-9093)

Example:C++

58Example: (Dockerfile)

59Example: Kitematic (ports)

60Example: Kitematic (volume)

61Example: Kitematic (advanced)

62Example: Nuclide (remote)

63Example: Nuclide (debugger)

64 clang Buck clang/llvm libclang.so, libLLVM.so

05

? Great Technology For Great Games2016 Dev Day

66Docker Compose

67Docker Compose docker compose : = docker , , docker

68Example: links DNS

69Example: compose + docker-compose up -d:

70TIPS: DockerHub MySQL / MariaDB redis compose ( )

06

SW Great Technology For Great Games2016 Dev Day

72 SW ?: docker ? ?

73Docker SwarmDocker : swarm ( )docker service create swarm ( )

74Docker RegistryDocker // Docker (: registry:2) volume HTTP TLS *

75Docker Swarm + Registry

[email protected]+82-70-4923-6566Q&AGreat Technology For Great Games, iFunFactory

[email protected]+82-70-4923-6566THANKS!Great Technology For Great Games, iFunFactory