blob: f6db3c2f45147ec58109185174f69b6ca6c339b2 [file] [log] [blame] [view]
jfarrelle03f7e82015-02-18 23:25:54 -05001# Apache Thrift Docker containers
James E. King, IIId7142b72017-09-01 13:00:36 -07002Docker containers used to build and test Apache Thrift for a variety of platforms.
jfarrelle03f7e82015-02-18 23:25:54 -05003
James E. King, IIId7142b72017-09-01 13:00:36 -07004## Available Containers
jfarrelle03f7e82015-02-18 23:25:54 -05005
James E. King, IIId7142b72017-09-01 13:00:36 -07006### CentOS
7* 7.3 (current)
8
9### Debian
10* jessie
11* stretch (current)
12
13### Ubuntu
14* trusty
15* xenial (current)
jfarrelle03f7e82015-02-18 23:25:54 -050016
17## Dependencies
James E. King, IIId7142b72017-09-01 13:00:36 -070018* A working Docker environment. A Vagrantfile is provided which will setup an Ubuntu host and working Docker environment as well as build the Apache Thrift Docker container for testing and development.
jfarrelle03f7e82015-02-18 23:25:54 -050019
20## Usage
James E. King, IIId7142b72017-09-01 13:00:36 -070021From the Apache Thrift code base root:
jfarrelle03f7e82015-02-18 23:25:54 -050022
23* Build
24
James E. King, IIId7142b72017-09-01 13:00:36 -070025 docker build -t thrift build/docker/ubuntu-xenial
jfarrelle03f7e82015-02-18 23:25:54 -050026
27 or
28
James E. King, IIId7142b72017-09-01 13:00:36 -070029 docker build -t thrift build/docker/centos-7.3
jfarrelle03f7e82015-02-18 23:25:54 -050030
31* Run
32
Nobuaki Sukegawaa6ab1f52015-11-28 15:04:39 +090033 docker run -v $(pwd):/thrift/src -it thrift /bin/bash
jfarrelle03f7e82015-02-18 23:25:54 -050034
James E. King, IIId7142b72017-09-01 13:00:36 -070035## Core Tool Versions per Dockerfile
36 | Tool | centos-7.3 | debian-stretch | ubuntu-xenial |
37 |-----------|------------|----------------|---------------|
38 | ant | 1.9.2 | 1.9.9 | 1.9.6 |
39 | autoconf | 2.69 | 2.69 | 2.69 |
40 | automake | 1.13.4 | 1.15 | 1.15 |
41 | bison | 2.7 | 3.0.4 | 3.0.4 |
42 | boost | 1.53.0 | 1.62.0 | 1.58.0 |
43 | cmake | 3.6.3 | 3.7.2 | 3.5.1 |
44 | flex | 2.5.37 | 2.6.1 | 2.6.0 |
45 | glibc | 2.17 | 2.24 | 2.23 |
46 | libevent | 2.0.21 | 2.0.21 | 2.0.21 |
47 | libstdc++ | 4.8.5 | 6.3.0 | 5.4.0 |
48 | make | 3.82 | 4.1 | 4.1 |
49 | openssl | 1.0.1e | 1.1.0f | 1.0.2g |
50
51## Language Versions per Dockerfile
52 | Language | centos-7.3 | debian-stretch | ubuntu-xenial |
53 |-----------|------------|----------------|---------------|
54 | as3 | | | |
55 | C++-gcc | 4.8.5 | 6.3.0 | 5.4.0 |
56 | C++-clang | 3.4.2 | 3.8.1 | 3.8 |
57 | C# (mono) | 4.6.2 | 4.6.2.7 | 5.2.0.215 |
58 | c_glib | 2.46.2 | 2.50.3 | 2.48.2 |
59 | cocoa | | | |
60 | d | 2.076.0 | 2.075.1 | 2.075.1 |
61 | dart | 1.24.2 | 1.24.2 | 1.24.2 |
62 | delphi | | | |
63 | dotnet | | | |
64 | erlang | 20 | 19.2 | 18.3 |
65 | go | 1.9 | 1.7.4 | 1.6.2 |
66 | haskell | 7.6.3 | 8.0.1 | 7.10.3 |
67 | haxe | | 3.2.1 | 3.2.1 |
68 | java | 1.8.0_141 | 1.8.0_141 | 1.8.0_131 |
69 | js | | | |
70 | lua | 5.3.4 | 5.2.4 | 5.2.4 |
James E. King, III699b5bc2017-09-14 08:07:08 -070071 | nodejs | 6.11.1 | 8.4.0 | 7.10.1 |
James E. King, IIId7142b72017-09-01 13:00:36 -070072 | ocaml | 4.01.0 | 4.02.3 | 4.02.3 |
73 | perl | 5.16.3 | 5.24.1 | 5.22.1 |
74 | php | 5.4.16 | 7.0.19 | 7.0.22 |
75 | python2 | 2.7.5 | 2.7.13 | 2.7.12 |
76 | python3 | 3.4.5 | 3.5.3 | 3.5.2 |
77 | ruby | 2.0.0p648 | 2.3.3p222 | 2.3.1p112 |
78 | rust | 1.17.0 | 1.14.0 | 1.15.1 |
79 | smalltalk | | | |
80 | swift | | | |
81