IT Log
[CKAN] Package Install 본문
패키지 설치 가능 여부
- Ubuntu 18.04 64bit
- Ubuntu 20.04 64bit
※ Ubuntu 다른 버전이거나, 다른 OS인 경우에는 Source 설치를 진행
참조 URL : docs.ckan.org/en/2.9/maintaining/installing/install-from-package.html
1. CKAN 패키지 설치
1-1. 우분투 UPDATE
sudo apt update
1-2. 우분투 패키지 설치
※ 20.04의 경우 'python3-distutils'를 설치하지 않으면 이후 CKAN 패키지 설치시 오류 발생
sudo apt install -y libpq5 redis-server nginx supervisor python3-distutils
1-3. CKAN 패키지 다운로드 및 설치
wget http://packaging.ckan.org/python-ckan_2.9-py3-focal_amd64.deb
sudo dpkg -i python-ckan_2.9-py3-focal_amd64.deb
2. PostgreSQL 설정 및 설치
2-1 PostgreSQL 설치
sudo apt install -y postgresql
2-2. User 및 Database 생성
# User ( 비밀번호 입력 및 확인 )
sudo -u postgres createuser -S -D -R -P ckan_default
-- ckan
-- ckan
sudo -u postgres createuser -S -D -R -P -l datastore_default
-- store
-- store
sudo -u postgres createuser -S -D -R -P datapusher_jobs
-- pusher
-- pusher
# Database
sudo -u postgres createdb -O ckan_default ckan_default -E utf-8
sudo -u postgres createdb -O ckan_default datastore_default -E utf-8
sudo -u postgres createdb -O datapusher_jobs datapusher_jobs -E utf-8
2-3. Network 설정
sudo vi /etc/postgresql/12/main/postgresql.conf
# 수정 전
#listen_addresses = 'loacalhost'
# 수정 후 (주석 제거 및 내용 수정)
listen_addresses = '*'
sudo vi /etc/postgresql/12/main/pg_hba.conf
# 맨 아랫줄에 추가
host all all 0.0.0.0/0 md5
3. Solr 설정 및 설치
3-1. Solr 설치
sudo apt install -y solr-tomcat
3-2. 포트 수정
sudo vi /etc/tomcat9/server.xml
# 수정 전
<Connector port="8080" protocol="HTTP/1.1"
# 수정 후
<Connector port="8983" protocol="HTTP/1.1"
3-3. schema.xml
sudo mv /etc/solr/conf/schema.xml /etc/solr/conf/schema.xml.bak
sudo ln -s /usr/lib/ckan/default/src/ckan/ckan/config/solr/schema.xml /etc/solr/conf/schema.xml
3-4. 재시작
sudo service tomcat9 restart
4. CKAN 구성 업데이트 및 DB 초기화
4-1. CKAN 구성 업데이트
- 4-1 내용은 이러한 옵션들이 있다는 점에 초점
- 빠르게 오류 없이 실행하려면 필수 내용만 아래 내용과 같이 수정
sudo vi /etc/ckan/default/ckan.ini
아래 부분은 삭제 ( Database Settings에 포함할 예정임)
# PostgreSQL' full-text search parameters
ckan.datastore.default_fts_lang = english
ckan.datastore.default_fts_index_method = gist
## Database Settings
※ 필수 내용
- sqlalchemy.url
- ckan.datastore.write_url
- ckan.datastore.read_url
sqlalchemy.url = postgresql://ckan_default:ckan@localhost/ckan_default
ckan.datastore.write_url = postgresql://ckan_default:ckan@localhost/datastore_default
ckan.datastore.read_url = postgresql://datastore_default:store@localhost/datastore_default
ckan.datastore.sqlalchemy.pool_size=10
ckan.datastore.sqlalchemy.max_overflow=20
ckan.datastore.default_fts_lang = english
ckan.datastore.default_fts_index_method = gist
ckan.datastore.sqlsearch.enabled = True
ckan.datastore.search.rows_default = 1000
ckan.datastore.search.rows_max = 1000000
ckan.datastore.sqlsearch.allowed_functions_file = /usr/lib/ckan/default/src/ckan/ckanext/datastore/allowed_functions.txt
- 'ckan.datastore.sqlsearch.allowed_functions_file' 은 datastore_search_sql () 함수로 전송된 쿼리에서 실행을 허용해야하는 SQL 함수를 나열하는 텍스트 파일의 경로를 정의 할 수 있습니다. (단, ckan.datastore.sqlsearch.enaabled가 True여야 함.)
- 대부분 allowed_functions.txt 경로는 위와 같지만 위치를 한번 확인한 뒤 설정할 것.
## Site Settings
※ 필수 내용
- ckan.stie_url
ckan.site_url = http://localhost
#apikey_header_name = API-KEY
#ckan.cache_expires = 2592000
#ckan.cache_enabled = True
ckan.use_pylons_response_cleanup_middleware = true
ckan.mimetype_guess = file_ext
ckan.static_max_age = 2592000
ckan.tracking_enabled = True
ckan.valid_url_schemes = http https ftp sftp
## Authorization Settings
※ 아래 전부 수정하여도 무관
ckan.auth.anon_create_dataset = False
ckan.auth.create_unowned_dataset = False
ckan.auth.create_dataset_if_not_in_organization = False
ckan.auth.user_create_groups = True
ckan.auth.user_create_organizations = False
ckan.auth.user_delete_groups = False
ckan.auth.user_delete_organizations = False
ckan.auth.create_user_via_api = False
ckan.auth.create_user_via_web = True
ckan.auth.roles_that_cascade_to_sub_groups = admin editor
ckan.auth.public_user_details = False
ckan.auth.public_activity_stream_detail = True
ckan.auth.allow_dataset_collaborators = True
ckan.auth.allow_admin_collaborators = True
ckan.auth.allow_collaborators_to_change_owner_org = True
ckan.auth.create_default_api_keys = True
## Search Settings
※ 필수 내용
- solr_url
ckan.site_id = default
solr_url = http://127.0.0.1:8983/solr
ckan.search.automatic_indexing = true
ckan.search.solr_commit = false
ckan.search.show_all_types = dataset
ckan.search.default_include_private = false
#ckan.search.default_package_sort = "score desc, metadata_modified desc"
search.facets.limit = 100
search.facets.default = 10
ckan.extra_resource_fields = alt_url
ckan.search.rows_max = 1000
ckan.group_and_organization_list_max = 1000
ckan.group_and_organization_list_all_fields_max = 100
## Plugins Settings
※ 필수 내용
- ckan.plugins : 이 옵션은 띄어쓰기로 각 플러그인을 구분하며, 설치되어 있는 플러그인만 작성 가능
ckan.plugins = stats text_view image_view recline_view datastore datapusher resource_proxy
ckanext.stats.cache_enabled = True
ckan.resource_proxy.max_file_size = 1048576
ckan.resource_proxy.chunk_size = 8192
## Resource Views Settings
- 'ckan.views.default_views'는 ckan.plugins에 작성된 plugin만 작성 가능
- 그 외 옵션은 기존에 작성되어 있으므로 주석만 해제
ckan.views.default_views = image_view webpage_view recline_grid_view
ckan.preview.json_formats = json
ckan.preview.xml_formats = xml rdf rdf+xml owl+xml atom rss
ckan.preview.text_formats = text plain text/plain
ckan.preview.image_formats = png jpeg jpg gif
## Storage Settings
※ 필수 내용
- ckan.storage_path : FileStore를 설정하려면 필수이나 아니면 필수가 아님
ckan.storage_path = /var/lib/ckan/default
ckan.max_resource_size = 100
ckan.max_image_size = 10
## Webassets Settings
ckan.webassets.path = /var/lib/ckan/default/webassets
ckan.webassets.use_x_sendfile = false
## DataPusher
※ 필수 내용
- ckan.datapusher.url
ckan.datapusher.formats = csv xls xlsx tsv application/csv application/vnd.ms-excel application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
ckan.datapusher.url = http://127.0.0.1:8800/
ckan.datapusher.assume_task_stale_after = 3600
4-2. DB 초기화
sudo ckan db init
5. Web 서버 시작 및 Nginx 재시작
sudo supervisorctl reload
sudo service nginx restart
# 상태 확인
sudo supervisorctl status
6. 사이트 접속
http://localhost
접속하여 확인.
참고 URL : docs.ckan.org/en/2.9/maintaining/installing/install-from-package.html
'Open Source > CKAN' 카테고리의 다른 글
[CKAN] FileSotre (1) | 2021.04.13 |
---|---|
[CKAN] DataStore (0) | 2021.04.09 |
[CKAN] Create Test Data (0) | 2021.04.09 |
[CKAN] Create Sysadmin User (0) | 2021.04.09 |
[CKAN] Source Install (0) | 2021.04.09 |