Merge pull request '整理docker打包' (#336) from docker into dev_local_v1
This commit is contained in:
commit
8874898ff3
42
Dockerfile
42
Dockerfile
|
@ -1,33 +1,29 @@
|
||||||
FROM ubuntu:18.04
|
FROM registry.cn-hangzhou.aliyuncs.com/gitlink/ruby:2.4.5
|
||||||
|
|
||||||
RUN apt update
|
ADD ./ /home/pdl/gitlink
|
||||||
|
|
||||||
RUN apt install -y openssl libssl-dev imagemagick git ruby-dev nodejs libmariadb-dev libmysqlclient-dev shared-mime-info libpq-dev libxml2-dev libxslt-dev
|
WORKDIR /home/pdl/gitlink
|
||||||
RUN DEBIAN_FRONTEND="noninteractive" apt -y install tzdata
|
|
||||||
RUN ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
|
||||||
|
|
||||||
WORKDIR /home/app/gitlink
|
RUN /bin/bash -l -c "source /etc/profile.d/rvm.sh"
|
||||||
|
|
||||||
ADD ./ /home/app/gitlink
|
RUN /bin/bash -l -c 'gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/'
|
||||||
|
|
||||||
RUN gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
|
RUN /bin/bash -l -c 'gem update --system'
|
||||||
|
|
||||||
RUN gem update --system
|
|
||||||
|
|
||||||
RUN gem install bundler
|
|
||||||
RUN gem install rake
|
|
||||||
|
|
||||||
RUN rm -rf Gemfile.lock
|
RUN rm -rf Gemfile.lock
|
||||||
|
|
||||||
#RUN cp config/configuration.yml.example config/configuration.yml
|
RUN cp config/configuration.yml.example config/configuration.yml
|
||||||
#RUN cp config/database.yml.example config/database.yml
|
RUN cp config/database.yml.example config/database.yml
|
||||||
#RUN touch config/redis.yml
|
RUN cp config/environments/production.rb.example config/environments/production.rb
|
||||||
#RUN touch config/elasticsearch.yml
|
RUN cp config/secrets.yml.example config/secrets.yml
|
||||||
|
RUN touch config/redis.yml
|
||||||
RUN bundle install
|
RUN touch config/elasticsearch.yml
|
||||||
|
RUN mkdir log
|
||||||
EXPOSE 4000
|
|
||||||
RUN rails s -p 4000 -b '0.0.0.0'
|
|
||||||
|
|
||||||
|
|
||||||
|
RUN /bin/bash -l -c 'bundle install'
|
||||||
|
#RUN /bin/bash -l -c 'RAILS_ENV=production rails db:create'
|
||||||
|
#RUN /bin/bash -l -c 'RAILS_ENV=production bundle exec rake sync_table_structure:import_csv'
|
||||||
|
#RUN /bin/bash -l -c 'RAILS_ENV=production rails db:migrate'
|
||||||
|
|
||||||
|
#EXPOSE 4000
|
||||||
|
#RUN /bin/bash -l -c 'RAILS_ENV=production puma'
|
|
@ -0,0 +1,19 @@
|
||||||
|
FROM ubuntu:20.04
|
||||||
|
RUN apt-get update
|
||||||
|
# basics
|
||||||
|
RUN apt-get install -y libssl-dev curl libmysqlclient-dev imagemagick nodejs mysql-server redis-server tzdata
|
||||||
|
RUN ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
||||||
|
# confirm openssl version
|
||||||
|
RUN openssl version
|
||||||
|
RUN which openssl
|
||||||
|
# install RVM, Ruby, and Bundler
|
||||||
|
RUN \curl -L https://get.rvm.io | bash -s stable
|
||||||
|
RUN /bin/bash -l -c "rvm requirements"
|
||||||
|
# replace ruby mirror url, accelerate install ruby
|
||||||
|
RUN sed -i 's/rvm_remote_server_url2/#rvm_remote_server_url2/g' /usr/local/rvm/config/db
|
||||||
|
RUN sed -i 's/cache.ruby-lang.org/cache.ruby-china.com/g' /usr/local/rvm/config/db
|
||||||
|
# install ruby
|
||||||
|
RUN /bin/bash -l -c "rvm install 2.4.5"
|
||||||
|
# confirm ruby version
|
||||||
|
RUN /bin/bash -l -c "rvm list"
|
||||||
|
RUN /bin/bash -l -c "ruby -v"
|
6
Gemfile
6
Gemfile
|
@ -4,7 +4,7 @@ git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
||||||
|
|
||||||
gem 'rails', '~> 5.2.0'
|
gem 'rails', '~> 5.2.0'
|
||||||
gem 'mysql2', '>= 0.4.4', '< 0.6.0'
|
gem 'mysql2', '>= 0.4.4', '< 0.6.0'
|
||||||
gem 'puma', '~> 3.11'
|
gem 'puma', '~> 5.6.5'
|
||||||
gem 'sass-rails', '~> 5.0'
|
gem 'sass-rails', '~> 5.0'
|
||||||
gem 'uglifier', '>= 1.3.0'
|
gem 'uglifier', '>= 1.3.0'
|
||||||
|
|
||||||
|
@ -20,6 +20,8 @@ gem 'bootsnap', '>= 1.1.0', require: false
|
||||||
|
|
||||||
gem 'chinese_pinyin'
|
gem 'chinese_pinyin'
|
||||||
|
|
||||||
|
# gem 'loofah','~> 2.20.0'
|
||||||
|
|
||||||
gem 'rack-cors'
|
gem 'rack-cors'
|
||||||
gem 'redis-rails'
|
gem 'redis-rails'
|
||||||
gem 'roo-xls'
|
gem 'roo-xls'
|
||||||
|
@ -53,7 +55,7 @@ gem 'acts_as_list'
|
||||||
gem 'omniauth-cas'
|
gem 'omniauth-cas'
|
||||||
|
|
||||||
# profiler Middleware
|
# profiler Middleware
|
||||||
gem 'rack-mini-profiler'
|
# gem 'rack-mini-profiler'
|
||||||
|
|
||||||
# object-based searching
|
# object-based searching
|
||||||
gem 'ransack'
|
gem 'ransack'
|
||||||
|
|
343
Gemfile.lock
343
Gemfile.lock
|
@ -1,47 +1,47 @@
|
||||||
GEM
|
GEM
|
||||||
remote: https://mirrors.cloud.tencent.com/rubygems/
|
remote: https://mirrors.cloud.tencent.com/rubygems/
|
||||||
specs:
|
specs:
|
||||||
aasm (5.0.6)
|
aasm (5.5.0)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
actioncable (5.2.4.1)
|
actioncable (5.2.8.1)
|
||||||
actionpack (= 5.2.4.1)
|
actionpack (= 5.2.8.1)
|
||||||
nio4r (~> 2.0)
|
nio4r (~> 2.0)
|
||||||
websocket-driver (>= 0.6.1)
|
websocket-driver (>= 0.6.1)
|
||||||
actionmailer (5.2.4.1)
|
actionmailer (5.2.8.1)
|
||||||
actionpack (= 5.2.4.1)
|
actionpack (= 5.2.8.1)
|
||||||
actionview (= 5.2.4.1)
|
actionview (= 5.2.8.1)
|
||||||
activejob (= 5.2.4.1)
|
activejob (= 5.2.8.1)
|
||||||
mail (~> 2.5, >= 2.5.4)
|
mail (~> 2.5, >= 2.5.4)
|
||||||
rails-dom-testing (~> 2.0)
|
rails-dom-testing (~> 2.0)
|
||||||
actionpack (5.2.4.1)
|
actionpack (5.2.8.1)
|
||||||
actionview (= 5.2.4.1)
|
actionview (= 5.2.8.1)
|
||||||
activesupport (= 5.2.4.1)
|
activesupport (= 5.2.8.1)
|
||||||
rack (~> 2.0, >= 2.0.8)
|
rack (~> 2.0, >= 2.0.8)
|
||||||
rack-test (>= 0.6.3)
|
rack-test (>= 0.6.3)
|
||||||
rails-dom-testing (~> 2.0)
|
rails-dom-testing (~> 2.0)
|
||||||
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
||||||
actionview (5.2.4.1)
|
actionview (5.2.8.1)
|
||||||
activesupport (= 5.2.4.1)
|
activesupport (= 5.2.8.1)
|
||||||
builder (~> 3.1)
|
builder (~> 3.1)
|
||||||
erubi (~> 1.4)
|
erubi (~> 1.4)
|
||||||
rails-dom-testing (~> 2.0)
|
rails-dom-testing (~> 2.0)
|
||||||
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
||||||
active_decorator (1.3.2)
|
active_decorator (1.4.0)
|
||||||
activesupport
|
activesupport
|
||||||
activejob (5.2.4.1)
|
activejob (5.2.8.1)
|
||||||
activesupport (= 5.2.4.1)
|
activesupport (= 5.2.8.1)
|
||||||
globalid (>= 0.3.6)
|
globalid (>= 0.3.6)
|
||||||
activemodel (5.2.4.1)
|
activemodel (5.2.8.1)
|
||||||
activesupport (= 5.2.4.1)
|
activesupport (= 5.2.8.1)
|
||||||
activerecord (5.2.4.1)
|
activerecord (5.2.8.1)
|
||||||
activemodel (= 5.2.4.1)
|
activemodel (= 5.2.8.1)
|
||||||
activesupport (= 5.2.4.1)
|
activesupport (= 5.2.8.1)
|
||||||
arel (>= 9.0)
|
arel (>= 9.0)
|
||||||
activestorage (5.2.4.1)
|
activestorage (5.2.8.1)
|
||||||
actionpack (= 5.2.4.1)
|
actionpack (= 5.2.8.1)
|
||||||
activerecord (= 5.2.4.1)
|
activerecord (= 5.2.8.1)
|
||||||
marcel (~> 0.3.1)
|
marcel (~> 1.0.0)
|
||||||
activesupport (5.2.4.1)
|
activesupport (5.2.8.1)
|
||||||
concurrent-ruby (~> 1.0, >= 1.0.2)
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||||
i18n (>= 0.7, < 2)
|
i18n (>= 0.7, < 2)
|
||||||
minitest (~> 5.1)
|
minitest (~> 5.1)
|
||||||
|
@ -50,20 +50,20 @@ GEM
|
||||||
activerecord (>= 5.0, < 6.1)
|
activerecord (>= 5.0, < 6.1)
|
||||||
acts_as_list (0.9.19)
|
acts_as_list (0.9.19)
|
||||||
activerecord (>= 3.0)
|
activerecord (>= 3.0)
|
||||||
addressable (2.7.0)
|
addressable (2.8.4)
|
||||||
public_suffix (>= 2.0.2, < 5.0)
|
public_suffix (>= 2.0.2, < 6.0)
|
||||||
ancestry (3.0.7)
|
ancestry (4.0.0)
|
||||||
activerecord (>= 3.2.0)
|
activerecord (>= 5.2.4.5)
|
||||||
annotate (2.6.5)
|
annotate (2.6.7)
|
||||||
activerecord (>= 2.3.0)
|
activerecord (>= 2.3.0)
|
||||||
rake (>= 0.8.7)
|
rake (~> 10.4.2, >= 10.4.2)
|
||||||
archive-zip (0.12.0)
|
archive-zip (0.12.0)
|
||||||
io-like (~> 0.3.0)
|
io-like (~> 0.3.0)
|
||||||
arel (9.0.0)
|
arel (9.0.0)
|
||||||
ast (2.4.0)
|
ast (2.4.2)
|
||||||
autoprefixer-rails (9.7.4)
|
autoprefixer-rails (10.4.13.0)
|
||||||
execjs
|
execjs (~> 2)
|
||||||
awesome_print (1.8.0)
|
awesome_print (1.9.2)
|
||||||
axlsx (3.0.0.pre)
|
axlsx (3.0.0.pre)
|
||||||
htmlentities (~> 4.3, >= 4.3.4)
|
htmlentities (~> 4.3, >= 4.3.4)
|
||||||
mimemagic (~> 0.3)
|
mimemagic (~> 0.3)
|
||||||
|
@ -72,40 +72,40 @@ GEM
|
||||||
axlsx_rails (0.5.2)
|
axlsx_rails (0.5.2)
|
||||||
actionpack (>= 3.1)
|
actionpack (>= 3.1)
|
||||||
axlsx (>= 2.0.1)
|
axlsx (>= 2.0.1)
|
||||||
backport (1.1.2)
|
backport (1.2.0)
|
||||||
benchmark (0.1.0)
|
benchmark (0.2.1)
|
||||||
bindex (0.8.1)
|
bindex (0.8.1)
|
||||||
bootsnap (1.4.6)
|
bootsnap (1.12.0)
|
||||||
msgpack (~> 1.0)
|
msgpack (~> 1.2)
|
||||||
bootstrap (4.3.1)
|
bootstrap (4.3.1)
|
||||||
autoprefixer-rails (>= 9.1.0)
|
autoprefixer-rails (>= 9.1.0)
|
||||||
popper_js (>= 1.14.3, < 2)
|
popper_js (>= 1.14.3, < 2)
|
||||||
sassc-rails (>= 2.0.0)
|
sassc-rails (>= 2.0.0)
|
||||||
builder (3.2.4)
|
builder (3.2.4)
|
||||||
bulk_insert (1.7.0)
|
bulk_insert (1.9.0)
|
||||||
activerecord (>= 3.2.0)
|
activerecord (>= 3.2.0)
|
||||||
capybara (3.15.1)
|
capybara (3.32.2)
|
||||||
addressable
|
addressable
|
||||||
mini_mime (>= 0.1.3)
|
mini_mime (>= 0.1.3)
|
||||||
nokogiri (~> 1.8)
|
nokogiri (~> 1.8)
|
||||||
rack (>= 1.6.0)
|
rack (>= 1.6.0)
|
||||||
rack-test (>= 0.6.3)
|
rack-test (>= 0.6.3)
|
||||||
regexp_parser (~> 1.2)
|
regexp_parser (~> 1.5)
|
||||||
xpath (~> 3.2)
|
xpath (~> 3.2)
|
||||||
chartkick (3.3.1)
|
chartkick (3.4.2)
|
||||||
childprocess (3.0.0)
|
childprocess (3.0.0)
|
||||||
chinese_pinyin (1.0.2)
|
chinese_pinyin (1.1.0)
|
||||||
chromedriver-helper (2.1.1)
|
chromedriver-helper (2.1.1)
|
||||||
archive-zip (~> 0.10)
|
archive-zip (~> 0.10)
|
||||||
nokogiri (~> 1.8)
|
nokogiri (~> 1.8)
|
||||||
chunky_png (1.3.11)
|
chunky_png (1.4.0)
|
||||||
concurrent-ruby (1.1.6)
|
concurrent-ruby (1.2.2)
|
||||||
connection_pool (2.2.2)
|
connection_pool (2.2.5)
|
||||||
crass (1.0.6)
|
crass (1.0.6)
|
||||||
deep_cloneable (3.0.0)
|
deep_cloneable (3.0.0)
|
||||||
activerecord (>= 3.1.0, < 7)
|
activerecord (>= 3.1.0, < 7)
|
||||||
diff-lcs (1.3)
|
diff-lcs (1.5.0)
|
||||||
diffy (3.3.0)
|
diffy (3.4.2)
|
||||||
domain_name (0.5.20190701)
|
domain_name (0.5.20190701)
|
||||||
unf (>= 0.0.5, < 1.0.0)
|
unf (>= 0.0.5, < 1.0.0)
|
||||||
doorkeeper (5.5.1)
|
doorkeeper (5.5.1)
|
||||||
|
@ -121,19 +121,19 @@ GEM
|
||||||
elasticsearch-transport (7.5.0)
|
elasticsearch-transport (7.5.0)
|
||||||
faraday (>= 0.14, < 1)
|
faraday (>= 0.14, < 1)
|
||||||
multi_json
|
multi_json
|
||||||
enumerize (2.3.1)
|
enumerize (2.5.0)
|
||||||
activesupport (>= 3.2)
|
activesupport (>= 3.2)
|
||||||
erubi (1.9.0)
|
erubi (1.12.0)
|
||||||
et-orbi (1.2.4)
|
et-orbi (1.2.7)
|
||||||
tzinfo
|
tzinfo
|
||||||
execjs (2.7.0)
|
execjs (2.8.1)
|
||||||
faraday (0.15.4)
|
faraday (0.15.4)
|
||||||
multipart-post (>= 1.2, < 3)
|
multipart-post (>= 1.2, < 3)
|
||||||
ffi (1.12.2)
|
ffi (1.15.5)
|
||||||
font-awesome-sass (4.7.0)
|
font-awesome-sass (4.7.0)
|
||||||
sass (>= 3.2)
|
sass (>= 3.2)
|
||||||
fugit (1.4.1)
|
fugit (1.8.1)
|
||||||
et-orbi (~> 1.1, >= 1.1.8)
|
et-orbi (~> 1, >= 1.2.7)
|
||||||
raabro (~> 1.4)
|
raabro (~> 1.4)
|
||||||
gitea-client (1.4.2)
|
gitea-client (1.4.2)
|
||||||
rest-client (~> 2.1.0)
|
rest-client (~> 2.1.0)
|
||||||
|
@ -145,78 +145,78 @@ GEM
|
||||||
groupdate (4.1.2)
|
groupdate (4.1.2)
|
||||||
activesupport (>= 4.2)
|
activesupport (>= 4.2)
|
||||||
harmonious_dictionary (0.0.1)
|
harmonious_dictionary (0.0.1)
|
||||||
hashie (3.6.0)
|
hashie (5.0.0)
|
||||||
htmlentities (4.3.4)
|
htmlentities (4.3.4)
|
||||||
http-accept (1.7.0)
|
http-accept (1.7.0)
|
||||||
http-cookie (1.0.5)
|
http-cookie (1.0.5)
|
||||||
domain_name (~> 0.5)
|
domain_name (~> 0.5)
|
||||||
i18n (1.8.2)
|
i18n (1.13.0)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
io-like (0.3.1)
|
io-like (0.3.1)
|
||||||
jaro_winkler (1.5.4)
|
jaro_winkler (1.5.5)
|
||||||
jbuilder (2.10.0)
|
jbuilder (2.11.5)
|
||||||
|
actionview (>= 5.0.0)
|
||||||
activesupport (>= 5.0.0)
|
activesupport (>= 5.0.0)
|
||||||
jquery-rails (4.3.5)
|
jquery-rails (4.5.1)
|
||||||
rails-dom-testing (>= 1, < 3)
|
rails-dom-testing (>= 1, < 3)
|
||||||
railties (>= 4.2.0)
|
railties (>= 4.2.0)
|
||||||
thor (>= 0.14, < 2.0)
|
thor (>= 0.14, < 2.0)
|
||||||
jwt (2.2.1)
|
jwt (2.3.0)
|
||||||
kaminari (1.2.0)
|
kaminari (1.2.2)
|
||||||
activesupport (>= 4.1.0)
|
activesupport (>= 4.1.0)
|
||||||
kaminari-actionview (= 1.2.0)
|
kaminari-actionview (= 1.2.2)
|
||||||
kaminari-activerecord (= 1.2.0)
|
kaminari-activerecord (= 1.2.2)
|
||||||
kaminari-core (= 1.2.0)
|
kaminari-core (= 1.2.2)
|
||||||
kaminari-actionview (1.2.0)
|
kaminari-actionview (1.2.2)
|
||||||
actionview
|
actionview
|
||||||
kaminari-core (= 1.2.0)
|
kaminari-core (= 1.2.2)
|
||||||
kaminari-activerecord (1.2.0)
|
kaminari-activerecord (1.2.2)
|
||||||
activerecord
|
activerecord
|
||||||
kaminari-core (= 1.2.0)
|
kaminari-core (= 1.2.2)
|
||||||
kaminari-core (1.2.0)
|
kaminari-core (1.2.2)
|
||||||
letter_avatar (0.3.8)
|
letter_avatar (0.3.9)
|
||||||
listen (3.1.5)
|
listen (3.1.5)
|
||||||
rb-fsevent (~> 0.9, >= 0.9.4)
|
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||||
rb-inotify (~> 0.9, >= 0.9.7)
|
rb-inotify (~> 0.9, >= 0.9.7)
|
||||||
ruby_dep (~> 1.2)
|
ruby_dep (~> 1.2)
|
||||||
loofah (2.4.0)
|
loofah (2.20.0)
|
||||||
crass (~> 1.0.2)
|
crass (~> 1.0.2)
|
||||||
nokogiri (>= 1.5.9)
|
nokogiri (>= 1.5.9)
|
||||||
mail (2.7.1)
|
mail (2.7.1)
|
||||||
mini_mime (>= 0.1.1)
|
mini_mime (>= 0.1.1)
|
||||||
marcel (0.3.3)
|
marcel (1.0.2)
|
||||||
mimemagic (~> 0.3.2)
|
|
||||||
maruku (0.7.3)
|
maruku (0.7.3)
|
||||||
method_source (0.9.2)
|
method_source (1.0.0)
|
||||||
mime-types (3.4.1)
|
mime-types (3.4.1)
|
||||||
mime-types-data (~> 3.2015)
|
mime-types-data (~> 3.2015)
|
||||||
mime-types-data (3.2023.0218.1)
|
mime-types-data (3.2023.0218.1)
|
||||||
mimemagic (0.3.10)
|
mimemagic (0.4.3)
|
||||||
nokogiri (~> 1)
|
nokogiri (~> 1)
|
||||||
rake
|
rake
|
||||||
mini_mime (1.0.2)
|
mini_mime (1.1.2)
|
||||||
mini_portile2 (2.4.0)
|
mini_portile2 (2.4.0)
|
||||||
minitest (5.14.0)
|
minitest (5.15.0)
|
||||||
msgpack (1.3.3)
|
msgpack (1.6.1)
|
||||||
multi_json (1.14.1)
|
multi_json (1.15.0)
|
||||||
multi_xml (0.6.0)
|
multi_xml (0.6.0)
|
||||||
multipart-post (2.1.1)
|
multipart-post (2.3.0)
|
||||||
mustermann (1.1.1)
|
mustermann (1.1.2)
|
||||||
ruby2_keywords (~> 0.0.1)
|
ruby2_keywords (~> 0.0.1)
|
||||||
mysql2 (0.5.3)
|
mysql2 (0.5.5)
|
||||||
netrc (0.11.0)
|
netrc (0.11.0)
|
||||||
nio4r (2.5.2)
|
nio4r (2.5.9)
|
||||||
nokogiri (1.10.8)
|
nokogiri (1.10.10)
|
||||||
mini_portile2 (~> 2.4.0)
|
mini_portile2 (~> 2.4.0)
|
||||||
oauth2 (1.4.4)
|
oauth2 (1.4.8)
|
||||||
faraday (>= 0.8, < 2.0)
|
faraday (>= 0.8, < 3.0)
|
||||||
jwt (>= 1.0, < 3.0)
|
jwt (>= 1.0, < 3.0)
|
||||||
multi_json (~> 1.3)
|
multi_json (~> 1.3)
|
||||||
multi_xml (~> 0.5)
|
multi_xml (~> 0.5)
|
||||||
rack (>= 1.2, < 3)
|
rack (>= 1.2, < 3)
|
||||||
omniauth (1.9.0)
|
omniauth (1.9.2)
|
||||||
hashie (>= 3.4.6, < 3.7.0)
|
hashie (>= 3.4.6)
|
||||||
rack (>= 1.6.2, < 3)
|
rack (>= 1.6.2, < 3)
|
||||||
omniauth-cas (1.1.1)
|
omniauth-cas (2.0.0)
|
||||||
addressable (~> 2.3)
|
addressable (~> 2.3)
|
||||||
nokogiri (~> 1.5)
|
nokogiri (~> 1.5)
|
||||||
omniauth (~> 1.2)
|
omniauth (~> 1.2)
|
||||||
|
@ -235,85 +235,81 @@ GEM
|
||||||
omniauth-wechat-oauth2 (0.2.2)
|
omniauth-wechat-oauth2 (0.2.2)
|
||||||
omniauth (>= 1.3.2)
|
omniauth (>= 1.3.2)
|
||||||
omniauth-oauth2 (>= 1.1.1)
|
omniauth-oauth2 (>= 1.1.1)
|
||||||
parallel (1.19.1)
|
parallel (1.20.1)
|
||||||
parser (2.7.1.1)
|
parser (2.7.2.0)
|
||||||
ast (~> 2.4.0)
|
ast (~> 2.4.1)
|
||||||
pdfkit (0.8.4.1)
|
pdfkit (0.8.4.3.2)
|
||||||
polyamorous (2.3.2)
|
popper_js (1.16.1)
|
||||||
activerecord (>= 5.2.1)
|
powerpack (0.1.3)
|
||||||
popper_js (1.16.0)
|
prettier (2.1.0)
|
||||||
powerpack (0.1.2)
|
public_suffix (4.0.7)
|
||||||
prettier (0.18.2)
|
puma (5.6.5)
|
||||||
public_suffix (4.0.3)
|
nio4r (~> 2.0)
|
||||||
puma (3.12.2)
|
|
||||||
raabro (1.4.0)
|
raabro (1.4.0)
|
||||||
rack (2.0.9)
|
rack (2.0.9.3)
|
||||||
rack-cors (1.1.1)
|
rack-cors (2.0.1)
|
||||||
rack (>= 2.0.0)
|
rack (>= 2.0.0)
|
||||||
rack-mini-profiler (2.0.1)
|
|
||||||
rack (>= 1.2.0)
|
|
||||||
rack-protection (2.0.8.1)
|
rack-protection (2.0.8.1)
|
||||||
rack
|
rack
|
||||||
rack-test (1.1.0)
|
rack-test (2.1.0)
|
||||||
rack (>= 1.0, < 3)
|
rack (>= 1.3)
|
||||||
rails (5.2.4.1)
|
rails (5.2.8.1)
|
||||||
actioncable (= 5.2.4.1)
|
actioncable (= 5.2.8.1)
|
||||||
actionmailer (= 5.2.4.1)
|
actionmailer (= 5.2.8.1)
|
||||||
actionpack (= 5.2.4.1)
|
actionpack (= 5.2.8.1)
|
||||||
actionview (= 5.2.4.1)
|
actionview (= 5.2.8.1)
|
||||||
activejob (= 5.2.4.1)
|
activejob (= 5.2.8.1)
|
||||||
activemodel (= 5.2.4.1)
|
activemodel (= 5.2.8.1)
|
||||||
activerecord (= 5.2.4.1)
|
activerecord (= 5.2.8.1)
|
||||||
activestorage (= 5.2.4.1)
|
activestorage (= 5.2.8.1)
|
||||||
activesupport (= 5.2.4.1)
|
activesupport (= 5.2.8.1)
|
||||||
bundler (>= 1.3.0)
|
bundler (>= 1.3.0)
|
||||||
railties (= 5.2.4.1)
|
railties (= 5.2.8.1)
|
||||||
sprockets-rails (>= 2.0.0)
|
sprockets-rails (>= 2.0.0)
|
||||||
rails-dom-testing (2.0.3)
|
rails-dom-testing (2.0.3)
|
||||||
activesupport (>= 4.2.0)
|
activesupport (>= 4.2.0)
|
||||||
nokogiri (>= 1.6)
|
nokogiri (>= 1.6)
|
||||||
rails-html-sanitizer (1.3.0)
|
rails-html-sanitizer (1.5.0)
|
||||||
loofah (~> 2.3)
|
loofah (~> 2.19, >= 2.19.1)
|
||||||
rails-i18n (5.1.3)
|
rails-i18n (5.1.3)
|
||||||
i18n (>= 0.7, < 2)
|
i18n (>= 0.7, < 2)
|
||||||
railties (>= 5.0, < 6)
|
railties (>= 5.0, < 6)
|
||||||
railties (5.2.4.1)
|
railties (5.2.8.1)
|
||||||
actionpack (= 5.2.4.1)
|
actionpack (= 5.2.8.1)
|
||||||
activesupport (= 5.2.4.1)
|
activesupport (= 5.2.8.1)
|
||||||
method_source
|
method_source
|
||||||
rake (>= 0.8.7)
|
rake (>= 0.8.7)
|
||||||
thor (>= 0.19.0, < 2.0)
|
thor (>= 0.19.0, < 2.0)
|
||||||
rainbow (3.0.0)
|
rainbow (3.1.1)
|
||||||
rake (13.0.1)
|
rake (10.4.2)
|
||||||
ransack (2.3.2)
|
ransack (2.4.1)
|
||||||
activerecord (>= 5.2.1)
|
activerecord (>= 5.2.4)
|
||||||
activesupport (>= 5.2.1)
|
activesupport (>= 5.2.4)
|
||||||
i18n
|
i18n
|
||||||
polyamorous (= 2.3.2)
|
rb-fsevent (0.11.2)
|
||||||
rb-fsevent (0.10.3)
|
|
||||||
rb-inotify (0.10.1)
|
rb-inotify (0.10.1)
|
||||||
ffi (~> 1.0)
|
ffi (~> 1.0)
|
||||||
rchardet (1.8.0)
|
rchardet (1.8.0)
|
||||||
redcarpet (3.5.0)
|
redcarpet (3.6.0)
|
||||||
redis (4.1.3)
|
redis (4.8.1)
|
||||||
redis-actionpack (5.2.0)
|
redis-actionpack (5.3.0)
|
||||||
actionpack (>= 5, < 7)
|
actionpack (>= 5, < 8)
|
||||||
redis-rack (>= 2.1.0, < 3)
|
redis-rack (>= 2.1.0, < 3)
|
||||||
redis-store (>= 1.1.0, < 2)
|
redis-store (>= 1.1.0, < 2)
|
||||||
redis-activesupport (5.2.0)
|
redis-activesupport (5.3.0)
|
||||||
activesupport (>= 3, < 7)
|
activesupport (>= 3, < 8)
|
||||||
redis-store (>= 1.3, < 2)
|
redis-store (>= 1.3, < 2)
|
||||||
redis-rack (2.1.2)
|
redis-rack (2.1.4)
|
||||||
rack (>= 2.0.8, < 3)
|
rack (>= 2.0.8, < 3)
|
||||||
redis-store (>= 1.2, < 2)
|
redis-store (>= 1.2, < 2)
|
||||||
redis-rails (5.0.2)
|
redis-rails (5.0.2)
|
||||||
redis-actionpack (>= 5.0, < 6)
|
redis-actionpack (>= 5.0, < 6)
|
||||||
redis-activesupport (>= 5.0, < 6)
|
redis-activesupport (>= 5.0, < 6)
|
||||||
redis-store (>= 1.2, < 2)
|
redis-store (>= 1.2, < 2)
|
||||||
redis-store (1.8.2)
|
redis-store (1.9.2)
|
||||||
redis (>= 4, < 5)
|
redis (>= 4, < 6)
|
||||||
regexp_parser (1.7.0)
|
regexp_parser (1.8.2)
|
||||||
request_store (1.5.0)
|
request_store (1.5.1)
|
||||||
rack (>= 1.4)
|
rack (>= 1.4)
|
||||||
rest-client (2.1.0)
|
rest-client (2.1.0)
|
||||||
http-accept (>= 1.7.0, < 2.0)
|
http-accept (>= 1.7.0, < 2.0)
|
||||||
|
@ -334,15 +330,15 @@ GEM
|
||||||
rqrcode_png (0.1.5)
|
rqrcode_png (0.1.5)
|
||||||
chunky_png
|
chunky_png
|
||||||
rqrcode
|
rqrcode
|
||||||
rspec-core (3.9.1)
|
rspec-core (3.9.3)
|
||||||
rspec-support (~> 3.9.1)
|
rspec-support (~> 3.9.3)
|
||||||
rspec-expectations (3.9.0)
|
rspec-expectations (3.9.4)
|
||||||
diff-lcs (>= 1.2.0, < 2.0)
|
diff-lcs (>= 1.2.0, < 2.0)
|
||||||
rspec-support (~> 3.9.0)
|
rspec-support (~> 3.9.0)
|
||||||
rspec-mocks (3.9.1)
|
rspec-mocks (3.9.1)
|
||||||
diff-lcs (>= 1.2.0, < 2.0)
|
diff-lcs (>= 1.2.0, < 2.0)
|
||||||
rspec-support (~> 3.9.0)
|
rspec-support (~> 3.9.0)
|
||||||
rspec-rails (3.9.0)
|
rspec-rails (3.9.1)
|
||||||
actionpack (>= 3.0)
|
actionpack (>= 3.0)
|
||||||
activesupport (>= 3.0)
|
activesupport (>= 3.0)
|
||||||
railties (>= 3.0)
|
railties (>= 3.0)
|
||||||
|
@ -350,7 +346,7 @@ GEM
|
||||||
rspec-expectations (~> 3.9.0)
|
rspec-expectations (~> 3.9.0)
|
||||||
rspec-mocks (~> 3.9.0)
|
rspec-mocks (~> 3.9.0)
|
||||||
rspec-support (~> 3.9.0)
|
rspec-support (~> 3.9.0)
|
||||||
rspec-support (3.9.2)
|
rspec-support (3.9.4)
|
||||||
rubocop (0.52.1)
|
rubocop (0.52.1)
|
||||||
parallel (~> 1.10)
|
parallel (~> 1.10)
|
||||||
parser (>= 2.4.0.2, < 3.0)
|
parser (>= 2.4.0.2, < 3.0)
|
||||||
|
@ -359,8 +355,8 @@ GEM
|
||||||
ruby-progressbar (~> 1.7)
|
ruby-progressbar (~> 1.7)
|
||||||
unicode-display_width (~> 1.0, >= 1.0.1)
|
unicode-display_width (~> 1.0, >= 1.0.1)
|
||||||
ruby-ole (1.2.12.2)
|
ruby-ole (1.2.12.2)
|
||||||
ruby-progressbar (1.10.1)
|
ruby-progressbar (1.13.0)
|
||||||
ruby2_keywords (0.0.2)
|
ruby2_keywords (0.0.5)
|
||||||
ruby_dep (1.5.0)
|
ruby_dep (1.5.0)
|
||||||
rubyzip (1.3.0)
|
rubyzip (1.3.0)
|
||||||
sass (3.7.4)
|
sass (3.7.4)
|
||||||
|
@ -368,13 +364,13 @@ GEM
|
||||||
sass-listen (4.0.0)
|
sass-listen (4.0.0)
|
||||||
rb-fsevent (~> 0.9, >= 0.9.4)
|
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||||
rb-inotify (~> 0.9, >= 0.9.7)
|
rb-inotify (~> 0.9, >= 0.9.7)
|
||||||
sass-rails (5.0.7)
|
sass-rails (5.1.0)
|
||||||
railties (>= 4.0.0, < 6)
|
railties (>= 5.2.0)
|
||||||
sass (~> 3.1)
|
sass (~> 3.1)
|
||||||
sprockets (>= 2.8, < 4.0)
|
sprockets (>= 2.8, < 4.0)
|
||||||
sprockets-rails (>= 2.0, < 4.0)
|
sprockets-rails (>= 2.0, < 4.0)
|
||||||
tilt (>= 1.1, < 3)
|
tilt (>= 1.1, < 3)
|
||||||
sassc (2.2.1)
|
sassc (2.4.0)
|
||||||
ffi (~> 1.9)
|
ffi (~> 1.9)
|
||||||
sassc-rails (2.1.2)
|
sassc-rails (2.1.2)
|
||||||
railties (>= 4.0.0)
|
railties (>= 4.0.0)
|
||||||
|
@ -382,9 +378,9 @@ GEM
|
||||||
sprockets (> 3.0)
|
sprockets (> 3.0)
|
||||||
sprockets-rails
|
sprockets-rails
|
||||||
tilt
|
tilt
|
||||||
searchkick (3.1.3)
|
searchkick (4.6.3)
|
||||||
activemodel (>= 4.2)
|
activemodel (>= 5)
|
||||||
elasticsearch (>= 5)
|
elasticsearch (>= 6, < 7.14)
|
||||||
hashie
|
hashie
|
||||||
selenium-webdriver (3.142.7)
|
selenium-webdriver (3.142.7)
|
||||||
childprocess (>= 0.5, < 4.0)
|
childprocess (>= 0.5, < 4.0)
|
||||||
|
@ -399,10 +395,10 @@ GEM
|
||||||
sidekiq (>= 4.2.1)
|
sidekiq (>= 4.2.1)
|
||||||
sidekiq-failures (1.0.4)
|
sidekiq-failures (1.0.4)
|
||||||
sidekiq (>= 4.0.0)
|
sidekiq (>= 4.0.0)
|
||||||
simple_form (5.0.2)
|
simple_form (5.0.3)
|
||||||
actionpack (>= 5.0)
|
actionpack (>= 5.0)
|
||||||
activemodel (>= 5.0)
|
activemodel (>= 5.0)
|
||||||
simple_xlsx_reader (1.0.4)
|
simple_xlsx_reader (1.0.5)
|
||||||
nokogiri
|
nokogiri
|
||||||
rubyzip
|
rubyzip
|
||||||
sinatra (2.0.8.1)
|
sinatra (2.0.8.1)
|
||||||
|
@ -424,46 +420,45 @@ GEM
|
||||||
thor (~> 1.0)
|
thor (~> 1.0)
|
||||||
tilt (~> 2.0)
|
tilt (~> 2.0)
|
||||||
yard (~> 0.9)
|
yard (~> 0.9)
|
||||||
spreadsheet (1.2.6)
|
spreadsheet (1.3.0)
|
||||||
ruby-ole (>= 1.0)
|
ruby-ole
|
||||||
spring (2.0.2)
|
spring (2.1.1)
|
||||||
activesupport (>= 4.2)
|
|
||||||
spring-watcher-listen (2.0.1)
|
spring-watcher-listen (2.0.1)
|
||||||
listen (>= 2.7, < 4.0)
|
listen (>= 2.7, < 4.0)
|
||||||
spring (>= 1.2, < 3.0)
|
spring (>= 1.2, < 3.0)
|
||||||
sprockets (3.7.2)
|
sprockets (3.7.2)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
rack (> 1, < 3)
|
rack (> 1, < 3)
|
||||||
sprockets-rails (3.2.1)
|
sprockets-rails (3.2.2)
|
||||||
actionpack (>= 4.0)
|
actionpack (>= 4.0)
|
||||||
activesupport (>= 4.0)
|
activesupport (>= 4.0)
|
||||||
sprockets (>= 3.0.0)
|
sprockets (>= 3.0.0)
|
||||||
thor (1.0.1)
|
thor (1.2.2)
|
||||||
thread_safe (0.3.6)
|
thread_safe (0.3.6)
|
||||||
tilt (2.0.10)
|
tilt (2.1.0)
|
||||||
turbolinks (5.2.1)
|
turbolinks (5.2.1)
|
||||||
turbolinks-source (~> 5.2)
|
turbolinks-source (~> 5.2)
|
||||||
turbolinks-source (5.2.0)
|
turbolinks-source (5.2.0)
|
||||||
tzinfo (1.2.6)
|
tzinfo (1.2.11)
|
||||||
thread_safe (~> 0.1)
|
thread_safe (~> 0.1)
|
||||||
uglifier (4.2.0)
|
uglifier (4.2.0)
|
||||||
execjs (>= 0.3.0, < 3)
|
execjs (>= 0.3.0, < 3)
|
||||||
unf (0.1.4)
|
unf (0.1.4)
|
||||||
unf_ext
|
unf_ext
|
||||||
unf_ext (0.0.8.2)
|
unf_ext (0.0.8.2)
|
||||||
unicode-display_width (1.6.1)
|
unicode-display_width (1.8.0)
|
||||||
web-console (3.7.0)
|
web-console (3.7.0)
|
||||||
actionview (>= 5.0)
|
actionview (>= 5.0)
|
||||||
activemodel (>= 5.0)
|
activemodel (>= 5.0)
|
||||||
bindex (>= 0.4.0)
|
bindex (>= 0.4.0)
|
||||||
railties (>= 5.0)
|
railties (>= 5.0)
|
||||||
websocket-driver (0.7.1)
|
websocket-driver (0.7.5)
|
||||||
websocket-extensions (>= 0.1.0)
|
websocket-extensions (>= 0.1.0)
|
||||||
websocket-extensions (0.1.4)
|
websocket-extensions (0.1.5)
|
||||||
wkhtmltopdf-binary (0.12.5.4)
|
wkhtmltopdf-binary (0.12.6.6)
|
||||||
xpath (3.2.0)
|
xpath (3.2.0)
|
||||||
nokogiri (~> 1.8)
|
nokogiri (~> 1.8)
|
||||||
yard (0.9.24)
|
yard (0.9.34)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
ruby
|
ruby
|
||||||
|
@ -502,6 +497,7 @@ DEPENDENCIES
|
||||||
kaminari (~> 1.1, >= 1.1.1)
|
kaminari (~> 1.1, >= 1.1.1)
|
||||||
letter_avatar
|
letter_avatar
|
||||||
listen (>= 3.0.5, < 3.2)
|
listen (>= 3.0.5, < 3.2)
|
||||||
|
loofah (~> 2.20.0)
|
||||||
mysql2 (>= 0.4.4, < 0.6.0)
|
mysql2 (>= 0.4.4, < 0.6.0)
|
||||||
oauth2
|
oauth2
|
||||||
omniauth (~> 1.9.0)
|
omniauth (~> 1.9.0)
|
||||||
|
@ -514,9 +510,8 @@ DEPENDENCIES
|
||||||
parallel (~> 1.19, >= 1.19.1)
|
parallel (~> 1.19, >= 1.19.1)
|
||||||
pdfkit
|
pdfkit
|
||||||
prettier
|
prettier
|
||||||
puma (~> 3.11)
|
puma (~> 5.6.5)
|
||||||
rack-cors
|
rack-cors
|
||||||
rack-mini-profiler
|
|
||||||
rails (~> 5.2.0)
|
rails (~> 5.2.0)
|
||||||
rails-i18n (~> 5.1)
|
rails-i18n (~> 5.1)
|
||||||
ransack
|
ransack
|
||||||
|
@ -538,7 +533,7 @@ DEPENDENCIES
|
||||||
sidekiq-cron (= 1.2.0)
|
sidekiq-cron (= 1.2.0)
|
||||||
sidekiq-failures
|
sidekiq-failures
|
||||||
simple_form
|
simple_form
|
||||||
simple_xlsx_reader
|
simple_xlsx_reader (~> 1.0.4)
|
||||||
sinatra
|
sinatra
|
||||||
solargraph (~> 0.38.0)
|
solargraph (~> 0.38.0)
|
||||||
spreadsheet
|
spreadsheet
|
||||||
|
@ -551,4 +546,4 @@ DEPENDENCIES
|
||||||
wkhtmltopdf-binary
|
wkhtmltopdf-binary
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.1.4
|
1.17.3
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/bash
|
||||||
|
bash -l -c "source /etc/profile.d/rvm.sh"
|
||||||
|
export PATH=/usr/local/rvm/gems/ruby-2.4.5/bin:/usr/local/rvm/gems/ruby-2.4.5@global/bin:/usr/local/rvm/rubies/ruby-2.4.5/bin:$PATH
|
||||||
|
bash -c "RAILS_ENV=production rails db:create"
|
||||||
|
#bash -c "RAILS_ENV=production bundle exec rake sync_table_structure:import_csv"
|
||||||
|
bash -c "RAILS_ENV=production rails db:migrate"
|
||||||
|
#bash -c "rm -f tmp/pids/server.pid && RAILS_ENV=production rails s -p 4000 -b '0.0.0.0'"
|
||||||
|
bash -c "RAILS_ENV=production puma -C config/puma.rb"
|
|
@ -1,5 +1,11 @@
|
||||||
default: &default
|
default: &default
|
||||||
platform_url: 'http://localhost:3000'
|
platform_url: 'http://localhost:3000'
|
||||||
|
wechat:
|
||||||
|
appid: '123'
|
||||||
|
secret: '123'
|
||||||
|
weapp:
|
||||||
|
appid: '123'
|
||||||
|
secret: '123'
|
||||||
oauth:
|
oauth:
|
||||||
qq:
|
qq:
|
||||||
appid: 'test'
|
appid: 'test'
|
||||||
|
@ -23,9 +29,9 @@ default: &default
|
||||||
redirect_uri: 'https://test.a.com/api/auth/educoder/callback'
|
redirect_uri: 'https://test.a.com/api/auth/educoder/callback'
|
||||||
|
|
||||||
gitea:
|
gitea:
|
||||||
access_key_id: ''
|
access_key_id: <%= ENV.fetch("GITEA_USER") { 'root' } %>
|
||||||
access_key_secret: ''
|
access_key_secret: <%= ENV.fetch("GITEA_PWD") { '123456' } %>
|
||||||
domain: 'https://testgit.trustie.net'
|
domain: <%= ENV.fetch("GITEA_URL") { 'http://gitea:3000' } %>
|
||||||
base_url: '/api/v1'
|
base_url: '/api/v1'
|
||||||
admin_token: '123123'
|
admin_token: '123123'
|
||||||
hat_base_url: '/api/hat'
|
hat_base_url: '/api/hat'
|
||||||
|
|
|
@ -1,62 +1,31 @@
|
||||||
# MySQL. Versions 5.1.10 and up are supported.
|
|
||||||
#
|
|
||||||
# Install the MySQL driver
|
|
||||||
# gem install mysql2
|
|
||||||
#
|
|
||||||
# Ensure the MySQL gem is defined in your Gemfile
|
|
||||||
# gem 'mysql2'
|
|
||||||
#
|
|
||||||
# And be sure to use new-style password hashing:
|
|
||||||
# https://dev.mysql.com/doc/refman/5.7/en/password-hashing.html
|
|
||||||
#
|
|
||||||
default: &default
|
default: &default
|
||||||
adapter: mysql2
|
adapter: mysql2
|
||||||
host: 127.0.0.1
|
host: <%= ENV.fetch("MYSQL_HOST") { '127.0.0.1' } %>
|
||||||
encoding: utf8mb4
|
encoding: utf8mb4
|
||||||
reconnect: true
|
reconnect: true
|
||||||
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
|
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 20 } %>
|
||||||
username: root
|
username: <%= ENV.fetch("MYSQL_USER") { 'root' } %>
|
||||||
password: 123456
|
password: <%= ENV.fetch("MYSQL_PWD") { '123456' } %>
|
||||||
# socket: /var/run/mysqld/mysqld.sock
|
wait_timeout: 10
|
||||||
|
ssl_mode: disabled
|
||||||
gitea_server:
|
gitea_server:
|
||||||
adapter: mysql2
|
adapter: mysql2
|
||||||
database: gitea_development
|
database: <%= ENV.fetch("MYSQL_DB_GITEA") { 'gitea' } %>
|
||||||
host: 127.0.0.1
|
host: <%= ENV.fetch("MYSQL_HOST") { '127.0.0.1' } %>
|
||||||
username: root
|
username: <%= ENV.fetch("MYSQL_USER") { 'root' } %>
|
||||||
password: "123456"
|
password: <%= ENV.fetch("MYSQL_PWD") { '123456' } %>
|
||||||
encoding: utf8
|
encoding: utf8
|
||||||
|
ssl_mode: disabled
|
||||||
|
|
||||||
development:
|
development:
|
||||||
<<: *default
|
<<: *default
|
||||||
host: 127.0.0.1
|
host: 127.0.0.1
|
||||||
database: forge_development
|
database: forgeplus_development
|
||||||
|
|
||||||
# Warning: The database defined as "test" will be erased and
|
|
||||||
# re-generated from your development database when you run "rake".
|
|
||||||
# Do not set this db to the same as development or production.
|
|
||||||
test:
|
test:
|
||||||
<<: *default
|
<<: *default
|
||||||
database: forge_test
|
database: forgeplus_test
|
||||||
|
|
||||||
# As with config/secrets.yml, you never want to store sensitive information,
|
|
||||||
# like your database password, in your source code. If your source code is
|
|
||||||
# ever seen by anyone, they now have access to your database.
|
|
||||||
#
|
|
||||||
# Instead, provide the password as a unix environment variable when you boot
|
|
||||||
# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database
|
|
||||||
# for a full rundown on how to provide these environment variables in a
|
|
||||||
# production deployment.
|
|
||||||
#
|
|
||||||
# On Heroku and other platform providers, you may have a full connection URL
|
|
||||||
# available as an environment variable. For example:
|
|
||||||
#
|
|
||||||
# DATABASE_URL="mysql2://myuser:mypass@localhost/somedatabase"
|
|
||||||
#
|
|
||||||
# You can use this database configuration with:
|
|
||||||
#
|
|
||||||
# production:
|
|
||||||
# url: <%= ENV['DATABASE_URL'] %>
|
|
||||||
#
|
|
||||||
production:
|
production:
|
||||||
<<: *default
|
<<: *default
|
||||||
database: forge_production
|
database: <%= ENV.fetch("MYSQL_DB") { 'forgeplus' } %>
|
||||||
|
|
|
@ -0,0 +1,120 @@
|
||||||
|
Rails.application.configure do
|
||||||
|
# Settings specified here will take precedence over those in config/application.rb.
|
||||||
|
|
||||||
|
# Code is not reloaded between requests.
|
||||||
|
config.cache_classes = true
|
||||||
|
|
||||||
|
# Eager load code on boot. This eager loads most of Rails and
|
||||||
|
# your application in memory, allowing both threaded web servers
|
||||||
|
# and those relying on copy on write to perform better.
|
||||||
|
# Rake tasks automatically ignore this option for performance.
|
||||||
|
config.eager_load = true
|
||||||
|
|
||||||
|
# Full error reports are disabled and caching is turned on.
|
||||||
|
config.consider_all_requests_local = false
|
||||||
|
config.action_controller.perform_caching = true
|
||||||
|
#
|
||||||
|
# config.cache_store = :memory_store
|
||||||
|
# config.public_file_server.headers = {
|
||||||
|
# 'Cache-Control' => "public"
|
||||||
|
# }
|
||||||
|
|
||||||
|
# Ensures that a master key has been made available in either ENV["RAILS_MASTER_KEY"]
|
||||||
|
# or in config/master.key. This key is used to decrypt credentials (and other encrypted files).
|
||||||
|
# config.require_master_key = true
|
||||||
|
|
||||||
|
# Disable serving static files from the `/public` folder by default since
|
||||||
|
# Apache or NGINX already handles this.
|
||||||
|
## config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?
|
||||||
|
config.public_file_server.enabled = true
|
||||||
|
|
||||||
|
# Compress JavaScripts and CSS.
|
||||||
|
config.assets.js_compressor = :uglifier
|
||||||
|
# config.assets.css_compressor = :sass
|
||||||
|
|
||||||
|
# Do not fallback to assets pipeline if a precompiled asset is missed.
|
||||||
|
config.assets.compile = false
|
||||||
|
|
||||||
|
# `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb
|
||||||
|
|
||||||
|
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
|
||||||
|
# config.action_controller.asset_host = 'http://assets.example.com'
|
||||||
|
|
||||||
|
# Specifies the header that your server uses for sending files.
|
||||||
|
# config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache
|
||||||
|
# config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
|
||||||
|
|
||||||
|
# Store uploaded files on the local file system (see config/storage.yml for options)
|
||||||
|
config.active_storage.service = :local
|
||||||
|
|
||||||
|
# Mount Action Cable outside main process or domain
|
||||||
|
# config.action_cable.mount_path = nil
|
||||||
|
config.action_cable.url = 'wss://testforgeplus.trustie.net/cable'
|
||||||
|
config.action_cable.allowed_request_origins = ['http://localhost:3000', 'https://testforgeplus.trustie.net', /https:\/\/testforgeplus.*/]
|
||||||
|
|
||||||
|
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
|
||||||
|
# config.force_ssl = true
|
||||||
|
|
||||||
|
# Use the lowest log level to ensure availability of diagnostic information
|
||||||
|
# when problems arise.
|
||||||
|
config.log_level = :info
|
||||||
|
|
||||||
|
# Prepend all log lines with the following tags.
|
||||||
|
config.log_tags = [:request_id]
|
||||||
|
|
||||||
|
# Use a different cache store in production.
|
||||||
|
# config.cache_store = :mem_cache_store
|
||||||
|
|
||||||
|
# Use a real queuing backend for Active Job (and separate queues per environment)
|
||||||
|
# config.active_job.queue_adapter = :resque
|
||||||
|
# config.active_job.queue_name_prefix = "educoderplus_#{Rails.env}"
|
||||||
|
|
||||||
|
config.action_mailer.perform_caching = false
|
||||||
|
|
||||||
|
# Ignore bad email addresses and do not raise email delivery errors.
|
||||||
|
# Set this to true and configure the email server for immediate delivery to raise delivery errors.
|
||||||
|
# config.action_mailer.raise_delivery_errors = false
|
||||||
|
|
||||||
|
# Enable locale fallbacks for I18n (makes lookups for any locale fall back to
|
||||||
|
# the I18n.default_locale when a translation cannot be found).
|
||||||
|
config.i18n.fallbacks = true
|
||||||
|
|
||||||
|
# Send deprecation notices to registered listeners.
|
||||||
|
config.active_support.deprecation = :notify
|
||||||
|
|
||||||
|
# Use default logging formatter so that PID and timestamp are not suppressed.
|
||||||
|
config.log_formatter = ::Logger::Formatter.new
|
||||||
|
|
||||||
|
# Use a different logger for distributed setups.
|
||||||
|
# require 'syslog/logger'
|
||||||
|
# config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name')
|
||||||
|
|
||||||
|
if ENV["RAILS_LOG_TO_STDOUT"].present?
|
||||||
|
logger = ActiveSupport::Logger.new(STDOUT)
|
||||||
|
logger.formatter = config.log_formatter
|
||||||
|
config.logger = ActiveSupport::TaggedLogging.new(logger)
|
||||||
|
end
|
||||||
|
|
||||||
|
config.logger = Logger.new("#{Rails.root}/log/#{Rails.env}.log", 'daily')
|
||||||
|
|
||||||
|
# Do not dump schema after migrations.
|
||||||
|
config.active_record.dump_schema_after_migration = false
|
||||||
|
|
||||||
|
config.active_record.belongs_to_required_by_default = false
|
||||||
|
|
||||||
|
|
||||||
|
# config.cache_store = :file_store, "#{Rails.root }/files/cache_store/"
|
||||||
|
# config.cache_store = :redis_store, 'redis://127.0.0.1:6379/0/cache', { expires_in: 90.minutes }
|
||||||
|
|
||||||
|
|
||||||
|
config.action_mailer.delivery_method = :smtp
|
||||||
|
config.action_mailer.smtp_settings = {
|
||||||
|
address: 'smtp.exmail.qq.com',
|
||||||
|
port: 25,
|
||||||
|
domain: 'smtp.qq.com',
|
||||||
|
user_name: '123@trustie.org',
|
||||||
|
password: '123',
|
||||||
|
authentication: '123',
|
||||||
|
enable_starttls_auto: true
|
||||||
|
}
|
||||||
|
end
|
|
@ -0,0 +1,22 @@
|
||||||
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
|
# Your secret key is used for verifying the integrity of signed cookies.
|
||||||
|
# If you change this key, all old signed cookies will become invalid!
|
||||||
|
|
||||||
|
# Make sure the secret is at least 30 characters and all random,
|
||||||
|
# no regular words or you'll be exposed to dictionary attacks.
|
||||||
|
# You can use `rails secret` to generate a secure secret key.
|
||||||
|
|
||||||
|
# Make sure the secrets in this file are kept private
|
||||||
|
# if you're sharing your code publicly.
|
||||||
|
|
||||||
|
development:
|
||||||
|
secret_key_base: 66ad08589cd561754c8cd659a5a50a3694904f9c455dd2177115697d12d2c27b873222da8646f34c8cf4598a0f108f12c05141d645a3534c9a9a9833f239f397
|
||||||
|
|
||||||
|
test:
|
||||||
|
secret_key_base: 66ad08589cd561754c8cd659a5a50a3694904f9c455dd2177115697d12d2c27b873222da8646f34c8cf4598a0f108f12c05141d645a3534c9a9a9833f239f397
|
||||||
|
|
||||||
|
# Do not keep production secrets in the repository,
|
||||||
|
# instead read values from the environment.
|
||||||
|
production:
|
||||||
|
secret_key_base: <%= ENV.fetch("SECRET_KEY_BASE") { '66ad08589cd561754c8cd659a5a50a3694904f9c455dd2177115697d12d2c27b873222da8646f34c8cf4598a0f108f12c05141d645a3534c9a9a9833f239f397' } %>
|
File diff suppressed because one or more lines are too long
|
@ -4942,7 +4942,7 @@ CREATE TABLE `sites` (
|
||||||
|
|
||||||
LOCK TABLES `sites` WRITE;
|
LOCK TABLES `sites` WRITE;
|
||||||
/*!40000 ALTER TABLE `sites` DISABLE KEYS */;
|
/*!40000 ALTER TABLE `sites` DISABLE KEYS */;
|
||||||
INSERT INTO `sites` VALUES (1,'新建镜像项目','/projects/mirror/new','add_mirror_project',0,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(2,'新建托管项目','/projects/deposit/new','add_common',0,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(3,'新建组织','/organize/new','add_r',0,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(4,'个人中心','/users/current_user','my_page',1,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(5,'我的组织','/users/current_user/organizes','my_organizes',1,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(6,'通知','/users/current_user/user_messages','notice',2,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(7,'找回密码','/account/lost_password','lost_password',2,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(8,'注册','/login?login=false','register',2,'2021-08-27 08:51:45','2021-08-27 08:51:45');
|
INSERT INTO `sites` VALUES (1,'新建项目','/projects/deposit/new','add_mirror_project',0,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(2,'导入项目','/projects/mirror/new','add_common',0,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(3,'新建组织','/organize/new','add_org',0,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(4,'个人主页','/current_user','my_page',1,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(6,'设置','/settings/profile','profile',1,'2021-08-27 08:51:45','2021-08-27 08:51:45'),(8,'注册','/register','register',2,'2021-08-27 08:51:45','2021-08-27 08:51:45');
|
||||||
/*!40000 ALTER TABLE `sites` ENABLE KEYS */;
|
/*!40000 ALTER TABLE `sites` ENABLE KEYS */;
|
||||||
UNLOCK TABLES;
|
UNLOCK TABLES;
|
||||||
|
|
||||||
|
|
|
@ -1,38 +1,81 @@
|
||||||
version: '3'
|
version: '3'
|
||||||
|
|
||||||
|
networks:
|
||||||
|
gitlink:
|
||||||
|
external: false
|
||||||
services:
|
services:
|
||||||
mysql:
|
mysql:
|
||||||
image: mysql:5.7.17
|
image: mysql:5.7.17
|
||||||
|
container_name: gitlink-mysql
|
||||||
command: --sql-mode=""
|
command: --sql-mode=""
|
||||||
restart: always
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- ./mysql_data/:/var/lib/mysql
|
- /data/mysql:/var/lib/mysql
|
||||||
|
- ./db/init.sql:/docker-entrypoint-initdb.d/forgeplus-init.sql
|
||||||
ports:
|
ports:
|
||||||
- "3306:3306"
|
- "13306:3306"
|
||||||
environment:
|
environment:
|
||||||
MYSQL_ROOT_PASSWORD: 123456789
|
- MYSQL_ROOT_PASSWORD=gitea
|
||||||
MYSQL_DATABASE: educoder
|
- MYSQL_USER=gitea
|
||||||
|
- MYSQL_PASSWORD=gitea
|
||||||
|
- MYSQL_DATABASE=gitea
|
||||||
|
networks:
|
||||||
|
- gitlink
|
||||||
|
|
||||||
redis:
|
gitea:
|
||||||
image: redis:6.2.5
|
image: registry.cn-hangzhou.aliyuncs.com/gitlink/gitea:v2
|
||||||
container_name: redis
|
container_name: gitea
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
- "6379:6379"
|
- "3000:3000"
|
||||||
volumes:
|
volumes:
|
||||||
- ./redis_data:/data
|
- ./gitea/app.ini:/etc/gitea/app.ini
|
||||||
|
- ./gitea/start.sh:/start.sh
|
||||||
|
- /data/repositories:/data/repositories
|
||||||
|
command:
|
||||||
|
- 'bash'
|
||||||
|
- '/start.sh'
|
||||||
|
environment:
|
||||||
|
- GITEA_WORK_DIR=/var/lib/gitea
|
||||||
|
- GITEA__database__DB_TYPE=mysql
|
||||||
|
- GITEA__database__HOST=mysql:3306
|
||||||
|
- GITEA__database__NAME=gitea
|
||||||
|
- GITEA__database__USER=gitea
|
||||||
|
- GITEA__database__PASSWD=gitea
|
||||||
|
depends_on:
|
||||||
|
- mysql
|
||||||
|
networks:
|
||||||
|
- gitlink
|
||||||
|
|
||||||
web:
|
web:
|
||||||
image: gitlink-ubuntu18.04:latest
|
image: gitlink-ubuntu20.04:latest
|
||||||
|
container_name: gitlink-web
|
||||||
build:
|
build:
|
||||||
context: ../
|
context: ./
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
# command: bash -c "rm -f tmp/pids/server.pid && rails s -p 4000 -b '0.0.0.0'"
|
environment:
|
||||||
|
- GEM_PATH=/usr/local/rvm/gems/ruby-2.4.5:/usr/local/rvm/gems/ruby-2.4.5@global
|
||||||
|
- GEM_HOME=/usr/local/rvm/gems/ruby-2.4.5
|
||||||
|
- MYSQL_USER=root
|
||||||
|
- MYSQL_PWD=gitea
|
||||||
|
- MYSQL_HOST=mysql
|
||||||
|
- GITEA_USER=root
|
||||||
|
- GITEA_PWD=gitlink#2023 #GITEA_PWD from gitea/start.sh
|
||||||
|
- GITEA_URL=gitea
|
||||||
|
command:
|
||||||
|
- 'bash'
|
||||||
|
- '/start.sh'
|
||||||
stdin_open: true
|
stdin_open: true
|
||||||
tty: true
|
tty: true
|
||||||
volumes:
|
volumes:
|
||||||
- .:/home/app/gitlink
|
- ./bin/start.sh:/start.sh
|
||||||
|
- /data/webguazai/publicfiles:/home/pdl/forgeplus/public/files
|
||||||
|
- /data/webguazai/publicavatars:/home/pdl/forgeplus/public/images/avatars
|
||||||
|
- /data/webguazai/files:/home/pdl/forgeplus/files
|
||||||
ports:
|
ports:
|
||||||
- "4000:4000"
|
- "4000:4000"
|
||||||
depends_on:
|
depends_on:
|
||||||
- mysql
|
- mysql
|
||||||
- redis
|
- gitea
|
||||||
|
networks:
|
||||||
|
- gitlink
|
||||||
|
|
|
@ -0,0 +1,99 @@
|
||||||
|
APP_NAME = 开源项目托管
|
||||||
|
RUN_USER = root
|
||||||
|
RUN_MODE = prod
|
||||||
|
I_AM_BEING_UNSAFE_RUNNING_AS_ROOT = true
|
||||||
|
[oauth2]
|
||||||
|
JWT_SECRET = pyD-ZA6zwykBhVCWdF5FsdRGDtM6kg16JLhcCu8uLPM
|
||||||
|
[security]
|
||||||
|
INTERNAL_TOKEN = eyDDbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE1NzQyMzU3OTN9.w7RDQaNanZHdC2XIrr9kAntPIjhfkXXOiBnNTbEdqQ8
|
||||||
|
INSTALL_LOCK = true
|
||||||
|
SECRET_KEY = K4DDaucPzKQnTf7WQxKFIoFNtIlsWVacoN5Ss3VDypQBUes7Ncy96UU735sfGOar
|
||||||
|
PASSWORD_COMPLEXITY = off
|
||||||
|
[database]
|
||||||
|
DB_TYPE = mysql
|
||||||
|
HOST = mysql:3306
|
||||||
|
NAME = gitea
|
||||||
|
USER = root
|
||||||
|
PASSWD = `gitea`
|
||||||
|
CHARSET = utf8
|
||||||
|
SSL_MODE = disable
|
||||||
|
#PATH = /var/lib/gitea/gitea.db
|
||||||
|
PATH =/var/lib/gitea/data/gitea.db
|
||||||
|
|
||||||
|
[repository]
|
||||||
|
ROOT = /data/repositories
|
||||||
|
|
||||||
|
[lfs]
|
||||||
|
PATH = /data/gitea/data/lfs
|
||||||
|
|
||||||
|
[server]
|
||||||
|
SSH_DOMAIN = 106.75.10.84
|
||||||
|
DOMAIN = 106.75.10.84
|
||||||
|
ROOT_URL = http://106.75.10.84:3000/
|
||||||
|
DISABLE_SSH = false
|
||||||
|
SSH_PORT = 22
|
||||||
|
LFS_START_SERVER = true
|
||||||
|
;LFS_CONTENT_PATH = /data/gitea/data/lfs
|
||||||
|
LFS_JWT_SECRET = n2kib4qdArULO57JW0jD2Ygm3z1ehzI8Y4zVfbxouyY
|
||||||
|
OFFLINE_MODE = false
|
||||||
|
[mailer]
|
||||||
|
ENABLED = false
|
||||||
|
[service]
|
||||||
|
REGISTER_EMAIL_CONFIRM = false
|
||||||
|
ENABLE_NOTIFY_MAIL = false
|
||||||
|
DISABLE_REGISTRATION = false
|
||||||
|
ALLOW_ONLY_EXTERNAL_REGISTRATION = false
|
||||||
|
ENABLE_CAPTCHA = false
|
||||||
|
REQUIRE_SIGNIN_VIEW = false
|
||||||
|
DEFAULT_KEEP_EMAIL_PRIVATE = false
|
||||||
|
DEFAULT_ALLOW_CREATE_ORGANIZATION = true
|
||||||
|
DEFAULT_ENABLE_TIMETRACKING = true
|
||||||
|
NO_REPLY_ADDRESS = noreply.example.org
|
||||||
|
SHOW_REGISTRATION_BUTTON = false
|
||||||
|
|
||||||
|
[picture]
|
||||||
|
DISABLE_GRAVATAR = false
|
||||||
|
ENABLE_FEDERATED_AVATAR = true
|
||||||
|
[openid]
|
||||||
|
ENABLE_OPENID_SIGNIN = true
|
||||||
|
ENABLE_OPENID_SIGNUP = true
|
||||||
|
[session]
|
||||||
|
PROVIDER = file
|
||||||
|
[log]
|
||||||
|
MODE = file
|
||||||
|
LEVEL = info
|
||||||
|
ROUTER = console
|
||||||
|
ROOT_PATH = /var/lib/gitea/log
|
||||||
|
[api]
|
||||||
|
DEFAULT_PAGING_NUM = 20
|
||||||
|
MAX_RESPONSE_ITEMS = 200
|
||||||
|
|
||||||
|
[git]
|
||||||
|
PATH =
|
||||||
|
DISABLE_DIFF_HIGHLIGHT = false
|
||||||
|
MAX_GIT_DIFF_LINES = 1000
|
||||||
|
MAX_GIT_DIFF_LINE_CHARACTERS = 5000
|
||||||
|
MAX_GIT_DIFF_FILES = 100
|
||||||
|
GC_ARGS =
|
||||||
|
EnableAutoGitWireProtocol = true
|
||||||
|
COMMITS_RANGE_SIZE = 50
|
||||||
|
|
||||||
|
; Operation timeout in seconds
|
||||||
|
[git.timeout]
|
||||||
|
DEFAULT = 1800
|
||||||
|
MIGRATE = 21600
|
||||||
|
MIRROR = 1800
|
||||||
|
CLONE = 1800
|
||||||
|
PULL = 1800
|
||||||
|
GC = 60
|
||||||
|
|
||||||
|
[migrations]
|
||||||
|
ALLOW_LOCALNETWORKS = true
|
||||||
|
|
||||||
|
[cron.update_mirrors]
|
||||||
|
SCHEDULE = @every 24h
|
||||||
|
|
||||||
|
[cron.delete_repo_archives]
|
||||||
|
ENABLED = true
|
||||||
|
RUN_AT_START = true
|
||||||
|
SCHEDULE = @every 72h
|
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
/usr/local/bin/gitea web --config /etc/gitea/app.ini
|
||||||
|
|
||||||
|
#/usr/local/bin/gitea admin user create --username root --password gitlink#2023 --email root@example.org --config /etc/gitea/app.ini
|
|
@ -6,6 +6,9 @@ namespace :sync_table_structure do
|
||||||
|
|
||||||
database_config = Rails.configuration.database_configuration
|
database_config = Rails.configuration.database_configuration
|
||||||
|
|
||||||
|
table_count = ActiveRecord::Base.connection.query_value("SELECT count(*) FROM information_schema.`TABLES` where TABLE_SCHEMA='#{database_config[Rails.env]["database"]}'")
|
||||||
|
next if table_count.to_i > 10
|
||||||
|
|
||||||
database = database_config[Rails.env]["database"]
|
database = database_config[Rails.env]["database"]
|
||||||
database_username = database_config[Rails.env]["username"]
|
database_username = database_config[Rails.env]["username"]
|
||||||
database_password = database_config[Rails.env]["password"]
|
database_password = database_config[Rails.env]["password"]
|
||||||
|
@ -14,7 +17,7 @@ namespace :sync_table_structure do
|
||||||
|
|
||||||
puts "bash: mysql -u#{database_username} -p#{database_password} -P#{database_port} -h#{database_host} #{database}"
|
puts "bash: mysql -u#{database_username} -p#{database_password} -P#{database_port} -h#{database_host} #{database}"
|
||||||
|
|
||||||
system "mysql -u#{database_username} -p#{database_password} -P#{database_port} -h#{database_host} #{database} < #{Rails.root}/db/structure.sql"
|
system "mysql --ssl-mode='DISABLED' -u#{database_username} -p#{database_password} -P#{database_port} -h#{database_host} #{database} < #{Rails.root}/db/structure.sql"
|
||||||
|
|
||||||
puts "init success"
|
puts "init success"
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue