1- FROM ubuntu:22 .04
1+ FROM ubuntu:24 .04
22RUN apt-get update -yqq && apt-get install -yqq apt-utils software-properties-common wget unzip cmake git
33RUN apt-get install -yqq gcc g++ openssl libssl-dev zlib1g-dev build-essential locales
44
55RUN apt-get -y install brotli libbrotli-dev
66RUN apt-get -y install libreadline-dev
77RUN apt-get -y install mysql-client
88RUN apt-get -y install libmysqlclient-dev
9+ RUN apt-get -y install psmisc
910
1011RUN locale-gen en_US.UTF-8
1112ENV LANG en_US.UTF-8
@@ -18,37 +19,95 @@ WORKDIR /
1819# RUN wget https://github.com/hggq/paozhu/releases/download/v1.5.8/benchmark.zip
1920RUN git clone https://github.com/hggq/paozhu
2021# RUN unzip benchmark.zip
21- RUN rm -Rf ./paozhu/controller
22- RUN rm -Rf ./paozhu/libs
23- RUN mkdir ./paozhu/libs
24- RUN mkdir ./paozhu/libs/types
22+ # RUN rm -Rf ./paozhu/controller
23+ # RUN rm -Rf ./paozhu/libs
24+ # RUN rm -Rf ./paozhu/view
25+ # RUN rm -Rf ./paozhu/viewsrc
26+ # RUN rm -Rf ./paozhu/orm
27+ # RUN rm -Rf ./paozhu/models
28+ # RUN rm -Rf ./paozhu/common
2529
26- RUN mkdir ./paozhu/controller
27- RUN mkdir ./paozhu/controller/include
28- RUN mkdir ./paozhu/controller/src
2930
30- COPY ./paozhu_benchmark/controller/include/techempower.h ./paozhu/controller/include/
31- COPY ./paozhu_benchmark/controller/src/techempower.cpp ./paozhu/controller/src/
3231
33- COPY ./paozhu_benchmark/libs/types/techempower_json.h ./paozhu/libs/types/
34- COPY ./paozhu_benchmark/libs/types/techempower_json_jsonreflect.cpp ./paozhu/libs/types/
32+ # COPY ./paozhu_benchmark/controller ./paozhu/
33+ # COPY ./paozhu_benchmark/libs ./paozhu/
34+ # COPY ./paozhu_benchmark/view ./paozhu/
35+ # COPY ./paozhu_benchmark/viewsrc ./paozhu/
3536
36- COPY ./paozhu_benchmark/common/autocontrolmethod.hpp ./paozhu/common/
37- COPY ./paozhu_benchmark/common/reghttpmethod_pre.hpp ./paozhu/common/
38- COPY ./paozhu_benchmark/common/reghttpmethod.hpp ./paozhu/common/
39- COPY ./paozhu_benchmark/common/json_reflect_headers.h ./paozhu/common/
37+ # COPY ./paozhu_benchmark/orm ./paozhu/
38+ # COPY ./paozhu_benchmark/models ./paozhu/
39+ # COPY ./paozhu_benchmark/common ./paozhu/
40+
41+ # RUN ls -l ./paozhu
42+ # RUN pwd
43+ # RUN mkdir ./paozhu/common
44+ # RUN mkdir ./paozhu/libs
45+ # RUN mkdir ./paozhu/libs/types
46+ # COPY ./paozhu_benchmark/libs/types/techempower_json.h ./paozhu/libs/types/
47+ # COPY ./paozhu_benchmark/libs/types/techempower_json_jsonreflect.cpp ./paozhu/libs/types/
48+
49+ # RUN mkdir ./paozhu/controller
50+ # RUN mkdir ./paozhu/controller/include
51+ # RUN mkdir ./paozhu/controller/src
52+
53+ # COPY ./paozhu_benchmark/controller/include/techempower.h ./paozhu/controller/include/
54+ # COPY ./paozhu_benchmark/controller/src/techempower.cpp ./paozhu/controller/src/
55+
56+
57+ # COPY ./paozhu_benchmark/common/autocontrolmethod.hpp ./paozhu/common/
58+ # COPY ./paozhu_benchmark/common/reghttpmethod_pre.hpp ./paozhu/common/
59+ # COPY ./paozhu_benchmark/common/reghttpmethod.hpp ./paozhu/common/
60+ # COPY ./paozhu_benchmark/common/json_reflect_headers.h ./paozhu/common/
61+
62+ # COPY ./paozhu_benchmark/common/cost_define.h ./paozhu/common/
63+ # COPY ./paozhu_benchmark/common/autorestfulpaths.hpp ./paozhu/common/
64+ # COPY ./paozhu_benchmark/common/websockets_method_reg.hpp ./paozhu/common/
65+ # COPY ./paozhu_benchmark/common/httphook.cpp ./paozhu/common/
4066
4167COPY ./paozhu_benchmark/conf/server.conf ./paozhu/conf/server.conf
4268COPY ./paozhu_benchmark/conf/orm.conf ./paozhu/conf/orm.conf
69+
70+ # must use testbenchmark.cpp to test benchmark
4371COPY ./paozhu_benchmark/CMakeLists.txt ./paozhu/CMakeLists.txt
4472
73+ # RUN mkdir ./paozhu/view
74+ # RUN mkdir ./paozhu/view/techempower
75+
76+ # COPY ./paozhu_benchmark/view/techempower/fortunes.html ./paozhu/view/techempower/
77+
78+ # RUN mkdir ./paozhu/viewsrc
79+ # RUN mkdir ./paozhu/viewsrc/include
80+ # RUN mkdir ./paozhu/viewsrc/view
81+ # RUN mkdir ./paozhu/viewsrc/view/techempower
82+
83+ # COPY ./paozhu_benchmark/viewsrc/view/techempower/fortunes.cpp ./paozhu/viewsrc/view/techempower/
84+ # COPY ./paozhu_benchmark/viewsrc/include/viewsrc.h ./paozhu/viewsrc/include/
85+ # COPY ./paozhu_benchmark/viewsrc/include/regviewmethod.hpp ./paozhu/viewsrc/include/
86+
87+
88+
89+ # RUN mkdir ./paozhu/orm
90+ # RUN mkdir ./paozhu/orm/include
91+
92+
93+ # COPY ./paozhu_benchmark/orm/orm.h ./paozhu/orm/
94+ # COPY ./paozhu_benchmark/orm/include/fortunebase.h ./paozhu/orm/include/
95+ # COPY ./paozhu_benchmark/orm/include/worldbase.h ./paozhu/orm/include/
96+
97+ # RUN mkdir ./paozhu/models
98+ # RUN mkdir ./paozhu/models/include
99+
100+ # COPY ./paozhu_benchmark/models/include/Fortune.h ./paozhu/models/include/
101+ # COPY ./paozhu_benchmark/models/include/World.h ./paozhu/models/include/
102+ # COPY ./paozhu_benchmark/models/World.cpp ./paozhu/models/
103+ # COPY ./paozhu_benchmark/models/Fortune.cpp ./paozhu/models/
104+
45105WORKDIR /paozhu
46106RUN unzip asio.zip
47107
48108RUN cmake . -B build -DCMAKE_BUILD_TYPE=Release
49109RUN cmake --build build
50110
51-
52111EXPOSE 8888
53112
54- CMD ./bin/paozhu
113+ CMD ./bin/paozhu
0 commit comments