Docker를 사용하여 갤럭시 서버를 시작할 때 로그인한 사용자만 사용 가능
로그인한 사용자만 도구를 사용할 수 있도록
갤럭시 서버를 손에 들고 있는 컴퓨터로 돌려보세요.에서 실행되는 갤럭시 서버는 손 옆에 있는 기기뿐만 아니라 네트워크를 통해 모든 연결 가능한 기기에서 접근할 수 있다
이 경우 액세스 방법은 http://動作中のマシンのIPアドレス:8080
입니다.
초기 상태는 이렇습니다.
로그인 전 Tools에도 다양한 도구가 있어 직접 사용 가능
이런 상황이 의도적이었다면 문제없지만, 모르는 사람이 자기 기계의 갤럭시 서버 도구를 사용하게 하고 싶지 않은 경우도 있다
따라서 도구를 사용하는 상황에서 갤럭시 서버의 설정을 변경해 로그인이 필요하도록 한다
갤럭시 설정 변경
갤럭시에서 서버의 각종 항목의 설정을 유연하게 변경할 수 있다
가장 기본적인 설정 파일은 갤럭시입니다.파일 형식
설정에 대한 자세한 내용은 Galaxy Configuration 참조
설정을 실제로 바꿔볼게요.
여기서 변경할 매개 변수는 Require -login으로 변경
require_login의 기본값은 가짜입니다. 이 경우 갤럭시 서버에 접근할 수 있는 사용자는 로그인하지 않아도 도구를 이용할 수 있습니다
여기는 리퀴어입니다.login 설정을 바꿔서 갤럭시를 시작하도록 하겠습니다.
Galaxy's config settings에 따르면 Docker 버전의 갤럭시docker run
에서는 환경 변수를 설정하여 갤럭시를 만든다.yml의 설정값을 변경할 수 있음을 기록합니다
Every Galaxy configuration parameter in config/galaxy.ini can be overwritten by passing an environment variable to the docker run command during startup. The name of the environment variable has to be: GALAXY_CONFIG+ the_original_parameter_name_in_capital_letters For example, you can set the Galaxy session timeout to 5 minutes by adding -e "GALAXY_CONFIG_SESSION_DURATION=5"to the docker run commandGALAXY_CONFIG_
이외에 매개 변수의 문자열을 대문자로 설정합니다
여기 설정은 리퀴어-로진이니까.$ docker run -d --rm \
-p 8080:80 -p 8021:21 -p 8022:22 -p 8800:8800 \
--volumes-from galaxy-store \
--privileged=true \
-e GALAXY_CONFIG_ENABLE_BETA_MULLED_CONTAINERS=True \
-e GALAXY_CONFIG_REQUIRE_LOGIN=True \
-e ENABLE_TTS_INSTALL=True \
bgruening/galaxy-stable
로그인 없이 Tools 창과 History 창이 사라지고 로그인 화면만 표시됩니다.
galaxy.페이지 번호 수정
Docker 컨테이너의 갤럭시 서버 버전이 아닌 갤럭시.yml 파일을 변경해서 설정을 변경합니다
require_로그인을 진짜로 설정하여 로그인이 필요하도록 동작을 변경합니다
갤럭시 Configuration, 갤럭시.갤럭시 디렉터리의config에 yml가 존재한다고 쓰여 있습니다
Configuration files can be found underneath the config/subdirectory, wherein you can find .sample files corresponding to configuration files that you can modify by copying the .sample to . In many cases, you will find that the sample configuration provides the most up-to-date and detailed documentation about the features configured therein.
현재 수호 모드에서 실행 중인 갤럭시 용기에 연결하여 이 파일을 다시 쓰기/만듭니다
먼저 현재 실행 중인 갤럭시 컨테이너의 "CONTAINER ID"를 확인합니다.$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0498d80bbb78 bgruening/galaxy-stable "/usr/bin/startup" 17 minutes ago Up 17 minutes 443/tcp, 9002/tcp, 0.0.0.0:8800->8800/tcp, 0.0.0.0:8021->21/tcp, 0.0.0.0:8022->22/tcp, 0.0.0.0:8080->80/tcp jovial_hertz
여기 "CONTAINER ID"는 0498d80bbb78입니다.
이 ID는 컨테이너의 실행에 따라 다릅니다.
환경 변수에 뒤에 설명된 대로 "CONTAINER ID"를 저장합니다.export CONTAINER_ID="0498d80bbb78"
("0498d80bbbbbb78"부분은 각각의 CONTAINER ID로 대체)
현재 실행 중인 용기에 연결하여 해당하는 파일을 변경해 보십시오$ docker exec -it ${CONTAINER_ID} /bin/bash
root@0498d80bbb78:/galaxy-central# ls config
auth_conf.xml.sample job_resource_params_conf.xml.sample shed_tool_conf.xml.sample
build_sites.yml.sample lmod_modules_mapping.yml.sample shed_tool_data_table_conf.xml
containers_conf.yml.sample local_conda_mapping.yml.sample shed_tool_data_table_conf.xml.sample
data_manager_conf.xml.sample migrated_tools_conf.xml swarm_manager_conf.yml.sample
datatypes_conf.xml.sample migrated_tools_conf.xml.sample tool_conf.xml.main
dependency_resolvers_conf.xml.sample object_store_conf.xml.sample tool_conf.xml.sample
disposable_email_blacklist.conf.sample oidc_backends_config.xml.sample tool_data_table_conf.xml.sample
error_report.yml.sample oidc_config.xml.sample tool_destinations.yml.sample
galaxy.yml.docker_sample openid_conf.xml.sample tool_sheds_conf.xml.sample
galaxy.yml.sample plugins tool_shed.yml.sample
job_conf.xml.docker_sample reports.yml.sample user_preferences_extra_conf.yml.sample
job_conf.xml.sample_advanced shed_data_manager_conf.xml workflow_resource_mapper_conf.yml.sample
job_conf.xml.sample_basic shed_data_manager_conf.xml.sample workflow_resource_params_conf.xml.sample
job_metrics_conf.xml.sample shed_tool_conf.xml workflow_schedulers_conf.xml.sample
목록에 갤럭시가 있는 것 같아요.없는 것 같아요.
갤럭시 Configuration 읽을 때.
Edit config/galaxy.yml (copy it from config/galaxy.yml.sample if it does not exist) to make configuration changes.
galaxy.갤럭시가 없으면yml.Sample을 복사해서 사용하라고 써있어요.
그대로 합시다
inside_docker_containerroot@0498d80bbb78:/galaxy-central# cd config
root@0498d80bbb78:/galaxy-central/config# cp galaxy.yml.sample galaxy.yml
galaxy.yml에 포함 여부 확인GALAXY_CONFIG_REQUIRE_LOGIN=True
root@0498d80bbb78:/galaxy-central/config# cat -n galaxy.yml| grep "require_login"
1259 #require_login: false
1262 # page (even if require_login is True)
이미 정해진 값과 같기 때문에 1259줄에 확실히 존재한다
그 다음에 적당한 편집을 하고 1259줄 다음에 쓴다config
그리고 갤럭시 서버 프로세스를 다시 시작합니다
inside_docker_containerroot@0498d80bbb78:/galaxy-central/config# supervisorctl restart galaxy:
galaxy:galaxy_nodejs_proxy: stopped
galaxy:handler0: stopped
galaxy:galaxy_web: stopped
galaxy:handler1: stopped
galaxy:galaxy_nodejs_proxy: started
galaxy:galaxy_web: started
galaxy:handler0: started
galaxy:handler1: started
그럼 결과는 어떻게 됐나요?
아무것도 바뀌지 않았어요.
실제로 Docker 용기의 갤럭시는 슈퍼바이저에서 관리하기 때문에 일반 갤럭시와는 설정이 다르다
galaxy.어디 있어요?
슈퍼visord 프로필이 어떤 갤럭시인지 참고하십시오.Yml을 사용했는지 확인을 해볼게요.
inside_docker_containerroot@0498d80bbb78:/galaxy-central/config# ls /etc/supervisor/conf.d
galaxy.conf
root@0498d80bbb78:/galaxy-central/config# grep "galaxy.yml" /etc/supervisor/conf.d/galaxy.conf
command = /galaxy_venv/bin/uwsgi --virtualenv /galaxy_venv --yaml /etc/galaxy/galaxy.yml --logdate --thunder-lock --master --processes %(ENV_UWSGI_PROCESSES)s --threads %(ENV_UWSGI_THREADS)s --logto /home/galaxy/logs/uwsgi.log --socket 127.0.0.1:4001 --pythonpath lib --stats 127.0.0.1:9191 -b 16384
command = /galaxy_venv/bin/python ./lib/galaxy/main.py -c /etc/galaxy/galaxy.yml --server-name=handler%(process_num)s --log-file=/home/galaxy/logs/handler%(process_num)s.log
이 Docker image의 갤럭시 서버가 사용 중인 것으로 발견됨require_login
적당한 갤럭시.이용하다
galaxy.yml의 설정 파일이 어디에 있는지 알았기 때문에 갤럭시 서버를 사용하도록 변경합니다
변경 내용을 지속시키기 위해 호스트 측 갤럭시입니다.yml을 Docker container 내부에 설치하여 사용
설정 변경
먼저 호스트의 파일 시스템에서 해당 파일을 복사합니다.$ docker exec ${CONTAINER_ID} cat /etc/galaxy/galaxy.yml > galaxy.yml
파일이 호스트에 복사되어 호스트에 있는 갤럭시로 복사됩니다.yml에 require_login: true
아까처럼 추가
현재 시작 중인 컨테이너 중지$ docker kill ${CONTAINER_ID}
수호 모드로 새 용기를 시작합니다$ docker run -d --rm \
-p 8080:80 -p 8021:21 -p 8022:22 -p 8800:8800 \
--volumes-from galaxy-store \
-v ${PWD}/galaxy.yml:/etc/galaxy/galaxy.yml \
--privileged=true \
-e GALAXY_CONFIG_ENABLE_BETA_MULLED_CONTAINERS=True \
-e ENABLE_TTS_INSTALL=True \
bgruening/galaxy-stable
호스트 현재 디렉터리의 갤럭시입니다.용기의/etc/galaxy/galaxy.yml에서 지도는 다음과 같은 부분입니다./etc/galaxy/galaxy.yml
절대 경로를 사용하여 경로 지정
위 설정이 완료되면 브라우저 연결을 통해 결과를 확인합니다
예상 화면 표시
이거 갤럭시.yml 파일은 용기 환경이 아닌 갤럭시 서버에서도 사용할 수 있습니다 (마땅히)
이번엔 여기까지
Reference
이 문제에 관하여(Docker를 사용하여 갤럭시 서버를 시작할 때 로그인한 사용자만 사용 가능), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/percipere/items/7eefcfcfacdf270d4f56
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
갤럭시에서 서버의 각종 항목의 설정을 유연하게 변경할 수 있다
가장 기본적인 설정 파일은 갤럭시입니다.파일 형식
설정에 대한 자세한 내용은 Galaxy Configuration 참조
설정을 실제로 바꿔볼게요.
여기서 변경할 매개 변수는 Require -login으로 변경
require_login의 기본값은 가짜입니다. 이 경우 갤럭시 서버에 접근할 수 있는 사용자는 로그인하지 않아도 도구를 이용할 수 있습니다
여기는 리퀴어입니다.login 설정을 바꿔서 갤럭시를 시작하도록 하겠습니다.
Galaxy's config settings에 따르면 Docker 버전의 갤럭시docker run
에서는 환경 변수를 설정하여 갤럭시를 만든다.yml의 설정값을 변경할 수 있음을 기록합니다
Every Galaxy configuration parameter in config/galaxy.ini can be overwritten by passing an environment variable to the docker run command during startup. The name of the environment variable has to be: GALAXY_CONFIG+ the_original_parameter_name_in_capital_letters For example, you can set the Galaxy session timeout to 5 minutes by adding -e "GALAXY_CONFIG_SESSION_DURATION=5"to the docker run commandGALAXY_CONFIG_
이외에 매개 변수의 문자열을 대문자로 설정합니다
여기 설정은 리퀴어-로진이니까.$ docker run -d --rm \
-p 8080:80 -p 8021:21 -p 8022:22 -p 8800:8800 \
--volumes-from galaxy-store \
--privileged=true \
-e GALAXY_CONFIG_ENABLE_BETA_MULLED_CONTAINERS=True \
-e GALAXY_CONFIG_REQUIRE_LOGIN=True \
-e ENABLE_TTS_INSTALL=True \
bgruening/galaxy-stable
로그인 없이 Tools 창과 History 창이 사라지고 로그인 화면만 표시됩니다.
galaxy.페이지 번호 수정
Docker 컨테이너의 갤럭시 서버 버전이 아닌 갤럭시.yml 파일을 변경해서 설정을 변경합니다
require_로그인을 진짜로 설정하여 로그인이 필요하도록 동작을 변경합니다
갤럭시 Configuration, 갤럭시.갤럭시 디렉터리의config에 yml가 존재한다고 쓰여 있습니다
Configuration files can be found underneath the config/subdirectory, wherein you can find .sample files corresponding to configuration files that you can modify by copying the .sample to . In many cases, you will find that the sample configuration provides the most up-to-date and detailed documentation about the features configured therein.
현재 수호 모드에서 실행 중인 갤럭시 용기에 연결하여 이 파일을 다시 쓰기/만듭니다
먼저 현재 실행 중인 갤럭시 컨테이너의 "CONTAINER ID"를 확인합니다.$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0498d80bbb78 bgruening/galaxy-stable "/usr/bin/startup" 17 minutes ago Up 17 minutes 443/tcp, 9002/tcp, 0.0.0.0:8800->8800/tcp, 0.0.0.0:8021->21/tcp, 0.0.0.0:8022->22/tcp, 0.0.0.0:8080->80/tcp jovial_hertz
여기 "CONTAINER ID"는 0498d80bbb78입니다.
이 ID는 컨테이너의 실행에 따라 다릅니다.
환경 변수에 뒤에 설명된 대로 "CONTAINER ID"를 저장합니다.export CONTAINER_ID="0498d80bbb78"
("0498d80bbbbbb78"부분은 각각의 CONTAINER ID로 대체)
현재 실행 중인 용기에 연결하여 해당하는 파일을 변경해 보십시오$ docker exec -it ${CONTAINER_ID} /bin/bash
root@0498d80bbb78:/galaxy-central# ls config
auth_conf.xml.sample job_resource_params_conf.xml.sample shed_tool_conf.xml.sample
build_sites.yml.sample lmod_modules_mapping.yml.sample shed_tool_data_table_conf.xml
containers_conf.yml.sample local_conda_mapping.yml.sample shed_tool_data_table_conf.xml.sample
data_manager_conf.xml.sample migrated_tools_conf.xml swarm_manager_conf.yml.sample
datatypes_conf.xml.sample migrated_tools_conf.xml.sample tool_conf.xml.main
dependency_resolvers_conf.xml.sample object_store_conf.xml.sample tool_conf.xml.sample
disposable_email_blacklist.conf.sample oidc_backends_config.xml.sample tool_data_table_conf.xml.sample
error_report.yml.sample oidc_config.xml.sample tool_destinations.yml.sample
galaxy.yml.docker_sample openid_conf.xml.sample tool_sheds_conf.xml.sample
galaxy.yml.sample plugins tool_shed.yml.sample
job_conf.xml.docker_sample reports.yml.sample user_preferences_extra_conf.yml.sample
job_conf.xml.sample_advanced shed_data_manager_conf.xml workflow_resource_mapper_conf.yml.sample
job_conf.xml.sample_basic shed_data_manager_conf.xml.sample workflow_resource_params_conf.xml.sample
job_metrics_conf.xml.sample shed_tool_conf.xml workflow_schedulers_conf.xml.sample
목록에 갤럭시가 있는 것 같아요.없는 것 같아요.
갤럭시 Configuration 읽을 때.
Edit config/galaxy.yml (copy it from config/galaxy.yml.sample if it does not exist) to make configuration changes.
galaxy.갤럭시가 없으면yml.Sample을 복사해서 사용하라고 써있어요.
그대로 합시다
inside_docker_containerroot@0498d80bbb78:/galaxy-central# cd config
root@0498d80bbb78:/galaxy-central/config# cp galaxy.yml.sample galaxy.yml
galaxy.yml에 포함 여부 확인GALAXY_CONFIG_REQUIRE_LOGIN=True
root@0498d80bbb78:/galaxy-central/config# cat -n galaxy.yml| grep "require_login"
1259 #require_login: false
1262 # page (even if require_login is True)
이미 정해진 값과 같기 때문에 1259줄에 확실히 존재한다
그 다음에 적당한 편집을 하고 1259줄 다음에 쓴다config
그리고 갤럭시 서버 프로세스를 다시 시작합니다
inside_docker_containerroot@0498d80bbb78:/galaxy-central/config# supervisorctl restart galaxy:
galaxy:galaxy_nodejs_proxy: stopped
galaxy:handler0: stopped
galaxy:galaxy_web: stopped
galaxy:handler1: stopped
galaxy:galaxy_nodejs_proxy: started
galaxy:galaxy_web: started
galaxy:handler0: started
galaxy:handler1: started
그럼 결과는 어떻게 됐나요?
아무것도 바뀌지 않았어요.
실제로 Docker 용기의 갤럭시는 슈퍼바이저에서 관리하기 때문에 일반 갤럭시와는 설정이 다르다
galaxy.어디 있어요?
슈퍼visord 프로필이 어떤 갤럭시인지 참고하십시오.Yml을 사용했는지 확인을 해볼게요.
inside_docker_containerroot@0498d80bbb78:/galaxy-central/config# ls /etc/supervisor/conf.d
galaxy.conf
root@0498d80bbb78:/galaxy-central/config# grep "galaxy.yml" /etc/supervisor/conf.d/galaxy.conf
command = /galaxy_venv/bin/uwsgi --virtualenv /galaxy_venv --yaml /etc/galaxy/galaxy.yml --logdate --thunder-lock --master --processes %(ENV_UWSGI_PROCESSES)s --threads %(ENV_UWSGI_THREADS)s --logto /home/galaxy/logs/uwsgi.log --socket 127.0.0.1:4001 --pythonpath lib --stats 127.0.0.1:9191 -b 16384
command = /galaxy_venv/bin/python ./lib/galaxy/main.py -c /etc/galaxy/galaxy.yml --server-name=handler%(process_num)s --log-file=/home/galaxy/logs/handler%(process_num)s.log
이 Docker image의 갤럭시 서버가 사용 중인 것으로 발견됨require_login
적당한 갤럭시.이용하다
galaxy.yml의 설정 파일이 어디에 있는지 알았기 때문에 갤럭시 서버를 사용하도록 변경합니다
변경 내용을 지속시키기 위해 호스트 측 갤럭시입니다.yml을 Docker container 내부에 설치하여 사용
설정 변경
먼저 호스트의 파일 시스템에서 해당 파일을 복사합니다.$ docker exec ${CONTAINER_ID} cat /etc/galaxy/galaxy.yml > galaxy.yml
파일이 호스트에 복사되어 호스트에 있는 갤럭시로 복사됩니다.yml에 require_login: true
아까처럼 추가
현재 시작 중인 컨테이너 중지$ docker kill ${CONTAINER_ID}
수호 모드로 새 용기를 시작합니다$ docker run -d --rm \
-p 8080:80 -p 8021:21 -p 8022:22 -p 8800:8800 \
--volumes-from galaxy-store \
-v ${PWD}/galaxy.yml:/etc/galaxy/galaxy.yml \
--privileged=true \
-e GALAXY_CONFIG_ENABLE_BETA_MULLED_CONTAINERS=True \
-e ENABLE_TTS_INSTALL=True \
bgruening/galaxy-stable
호스트 현재 디렉터리의 갤럭시입니다.용기의/etc/galaxy/galaxy.yml에서 지도는 다음과 같은 부분입니다./etc/galaxy/galaxy.yml
절대 경로를 사용하여 경로 지정
위 설정이 완료되면 브라우저 연결을 통해 결과를 확인합니다
예상 화면 표시
이거 갤럭시.yml 파일은 용기 환경이 아닌 갤럭시 서버에서도 사용할 수 있습니다 (마땅히)
이번엔 여기까지
Reference
이 문제에 관하여(Docker를 사용하여 갤럭시 서버를 시작할 때 로그인한 사용자만 사용 가능), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/percipere/items/7eefcfcfacdf270d4f56
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ docker run -d --rm \
-p 8080:80 -p 8021:21 -p 8022:22 -p 8800:8800 \
--volumes-from galaxy-store \
--privileged=true \
-e GALAXY_CONFIG_ENABLE_BETA_MULLED_CONTAINERS=True \
-e GALAXY_CONFIG_REQUIRE_LOGIN=True \
-e ENABLE_TTS_INSTALL=True \
bgruening/galaxy-stable
Docker 컨테이너의 갤럭시 서버 버전이 아닌 갤럭시.yml 파일을 변경해서 설정을 변경합니다
require_로그인을 진짜로 설정하여 로그인이 필요하도록 동작을 변경합니다
갤럭시 Configuration, 갤럭시.갤럭시 디렉터리의config에 yml가 존재한다고 쓰여 있습니다
Configuration files can be found underneath the config/subdirectory, wherein you can find .sample files corresponding to configuration files that you can modify by copying the .sample to . In many cases, you will find that the sample configuration provides the most up-to-date and detailed documentation about the features configured therein.
현재 수호 모드에서 실행 중인 갤럭시 용기에 연결하여 이 파일을 다시 쓰기/만듭니다
먼저 현재 실행 중인 갤럭시 컨테이너의 "CONTAINER ID"를 확인합니다.
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0498d80bbb78 bgruening/galaxy-stable "/usr/bin/startup" 17 minutes ago Up 17 minutes 443/tcp, 9002/tcp, 0.0.0.0:8800->8800/tcp, 0.0.0.0:8021->21/tcp, 0.0.0.0:8022->22/tcp, 0.0.0.0:8080->80/tcp jovial_hertz
여기 "CONTAINER ID"는 0498d80bbb78입니다.이 ID는 컨테이너의 실행에 따라 다릅니다.
환경 변수에 뒤에 설명된 대로 "CONTAINER ID"를 저장합니다.
export CONTAINER_ID="0498d80bbb78"
("0498d80bbbbbb78"부분은 각각의 CONTAINER ID로 대체)현재 실행 중인 용기에 연결하여 해당하는 파일을 변경해 보십시오
$ docker exec -it ${CONTAINER_ID} /bin/bash
root@0498d80bbb78:/galaxy-central# ls config
auth_conf.xml.sample job_resource_params_conf.xml.sample shed_tool_conf.xml.sample
build_sites.yml.sample lmod_modules_mapping.yml.sample shed_tool_data_table_conf.xml
containers_conf.yml.sample local_conda_mapping.yml.sample shed_tool_data_table_conf.xml.sample
data_manager_conf.xml.sample migrated_tools_conf.xml swarm_manager_conf.yml.sample
datatypes_conf.xml.sample migrated_tools_conf.xml.sample tool_conf.xml.main
dependency_resolvers_conf.xml.sample object_store_conf.xml.sample tool_conf.xml.sample
disposable_email_blacklist.conf.sample oidc_backends_config.xml.sample tool_data_table_conf.xml.sample
error_report.yml.sample oidc_config.xml.sample tool_destinations.yml.sample
galaxy.yml.docker_sample openid_conf.xml.sample tool_sheds_conf.xml.sample
galaxy.yml.sample plugins tool_shed.yml.sample
job_conf.xml.docker_sample reports.yml.sample user_preferences_extra_conf.yml.sample
job_conf.xml.sample_advanced shed_data_manager_conf.xml workflow_resource_mapper_conf.yml.sample
job_conf.xml.sample_basic shed_data_manager_conf.xml.sample workflow_resource_params_conf.xml.sample
job_metrics_conf.xml.sample shed_tool_conf.xml workflow_schedulers_conf.xml.sample
목록에 갤럭시가 있는 것 같아요.없는 것 같아요.갤럭시 Configuration 읽을 때.
Edit config/galaxy.yml (copy it from config/galaxy.yml.sample if it does not exist) to make configuration changes.
galaxy.갤럭시가 없으면yml.Sample을 복사해서 사용하라고 써있어요.
그대로 합시다
inside_docker_container
root@0498d80bbb78:/galaxy-central# cd config
root@0498d80bbb78:/galaxy-central/config# cp galaxy.yml.sample galaxy.yml
galaxy.yml에 포함 여부 확인GALAXY_CONFIG_REQUIRE_LOGIN=True
root@0498d80bbb78:/galaxy-central/config# cat -n galaxy.yml| grep "require_login"
1259 #require_login: false
1262 # page (even if require_login is True)
이미 정해진 값과 같기 때문에 1259줄에 확실히 존재한다그 다음에 적당한 편집을 하고 1259줄 다음에 쓴다
config
그리고 갤럭시 서버 프로세스를 다시 시작합니다inside_docker_container
root@0498d80bbb78:/galaxy-central/config# supervisorctl restart galaxy:
galaxy:galaxy_nodejs_proxy: stopped
galaxy:handler0: stopped
galaxy:galaxy_web: stopped
galaxy:handler1: stopped
galaxy:galaxy_nodejs_proxy: started
galaxy:galaxy_web: started
galaxy:handler0: started
galaxy:handler1: started
그럼 결과는 어떻게 됐나요?아무것도 바뀌지 않았어요.
실제로 Docker 용기의 갤럭시는 슈퍼바이저에서 관리하기 때문에 일반 갤럭시와는 설정이 다르다
galaxy.어디 있어요?
슈퍼visord 프로필이 어떤 갤럭시인지 참고하십시오.Yml을 사용했는지 확인을 해볼게요.
inside_docker_container
root@0498d80bbb78:/galaxy-central/config# ls /etc/supervisor/conf.d
galaxy.conf
root@0498d80bbb78:/galaxy-central/config# grep "galaxy.yml" /etc/supervisor/conf.d/galaxy.conf
command = /galaxy_venv/bin/uwsgi --virtualenv /galaxy_venv --yaml /etc/galaxy/galaxy.yml --logdate --thunder-lock --master --processes %(ENV_UWSGI_PROCESSES)s --threads %(ENV_UWSGI_THREADS)s --logto /home/galaxy/logs/uwsgi.log --socket 127.0.0.1:4001 --pythonpath lib --stats 127.0.0.1:9191 -b 16384
command = /galaxy_venv/bin/python ./lib/galaxy/main.py -c /etc/galaxy/galaxy.yml --server-name=handler%(process_num)s --log-file=/home/galaxy/logs/handler%(process_num)s.log
이 Docker image의 갤럭시 서버가 사용 중인 것으로 발견됨require_login
적당한 갤럭시.이용하다
galaxy.yml의 설정 파일이 어디에 있는지 알았기 때문에 갤럭시 서버를 사용하도록 변경합니다
변경 내용을 지속시키기 위해 호스트 측 갤럭시입니다.yml을 Docker container 내부에 설치하여 사용
설정 변경
먼저 호스트의 파일 시스템에서 해당 파일을 복사합니다.
$ docker exec ${CONTAINER_ID} cat /etc/galaxy/galaxy.yml > galaxy.yml
파일이 호스트에 복사되어 호스트에 있는 갤럭시로 복사됩니다.yml에 require_login: true
아까처럼 추가현재 시작 중인 컨테이너 중지
$ docker kill ${CONTAINER_ID}
수호 모드로 새 용기를 시작합니다$ docker run -d --rm \
-p 8080:80 -p 8021:21 -p 8022:22 -p 8800:8800 \
--volumes-from galaxy-store \
-v ${PWD}/galaxy.yml:/etc/galaxy/galaxy.yml \
--privileged=true \
-e GALAXY_CONFIG_ENABLE_BETA_MULLED_CONTAINERS=True \
-e ENABLE_TTS_INSTALL=True \
bgruening/galaxy-stable
호스트 현재 디렉터리의 갤럭시입니다.용기의/etc/galaxy/galaxy.yml에서 지도는 다음과 같은 부분입니다./etc/galaxy/galaxy.yml
절대 경로를 사용하여 경로 지정
위 설정이 완료되면 브라우저 연결을 통해 결과를 확인합니다
예상 화면 표시
이거 갤럭시.yml 파일은 용기 환경이 아닌 갤럭시 서버에서도 사용할 수 있습니다 (마땅히)
이번엔 여기까지
Reference
이 문제에 관하여(Docker를 사용하여 갤럭시 서버를 시작할 때 로그인한 사용자만 사용 가능), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/percipere/items/7eefcfcfacdf270d4f56텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)