Skip to content

Commit 3fea46b

Browse files
melissaclinemelissaclinejsstevenson
authored
Docker compose docs (#532)
Added text in the README to describe how do overcome a port collision on setting up local UTA and SeqRepo resources. --------- Co-authored-by: melissacline <cline@soe.ucsc.edu> Co-authored-by: James Stevenson <james.sharpsteen@gmail.com>
1 parent d1c8641 commit 3fea46b

1 file changed

Lines changed: 70 additions & 1 deletion

File tree

README.md

Lines changed: 70 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ This should start three containers:
125125
- [uta](https://github.com/biocommons/uta): a database of transcripts and
126126
alignments (localhost:5432)
127127

128-
Check that the containers are running, by running:
128+
Check that the seqrepo-rest-service and uta containers are running, by running:
129129

130130
```shell
131131
$ docker ps
@@ -143,6 +143,8 @@ You can test UTA and seqrepo installations like so:
143143
```shell
144144
$ psql -XAt postgres://anonymous@localhost/uta -c 'select count(*) from uta_20241220.transcript'
145145
314227
146+
curl 'http://127.0.0.1:5000/seqrepo/1/sequence/refseq:NM_000059.4?end=20'
147+
AGAGGCGGAGCCGCTGTGGC
146148
```
147149

148150
##### It doesn't work
@@ -162,6 +164,73 @@ Here are some things to try.
162164
vrs-python_seqrepo-rest-service_1 exited with code 1
163165
```
164166

167+
- If you are having issues with UTA: if your machine is already running
168+
postgresql on port 5432 (which is the
169+
default on many systems), you may see an error message such as this:
170+
```shell
171+
$ psql -XAt postgres://anonymous@localhost/uta -c 'select count(*) from uta_20241220.transcript'
172+
psql: error: connection to server at "localhost" (::1), port 5432 failed: FATAL: role "anonymous" does not exist
173+
```
174+
You can move your UTA installation to a different port as follows:
175+
- Select a new port number for UTA, and verify that the port is available.
176+
For example, if you have sudo privileges on your machine, you can verify
177+
the port is available with the `lsof` command:
178+
```
179+
sudo lsof -i :[port_number]
180+
```
181+
If the port is available, the output of this command should be 0 lines long.
182+
- Edit your docker-compose.yml file. In the lines
183+
```
184+
ports:
185+
- 5432:5432
186+
```
187+
replace the *first* number with a different number to specify a port on
188+
your local machine.
189+
````
190+
ports:
191+
- [your_port_number]:5432
192+
- Repeat the `docker-compose up` command
193+
- Repeat the command above to verify that there is now a docker command
194+
listening at this port.
195+
```
196+
sudo lsof -i :[your_port_number]
197+
```
198+
This time, you should see that a docker command is using the port.
199+
- Specify the new port in your psql command:
200+
```shell
201+
$ psql -XAt postgres://anonymous@localhost/uta -p [your_port_number] -c 'select count(*) from uta_20241220.transcript'
202+
```
203+
- Set the `UTA_DB_URL` environment variable to specify your port.
204+
```shell
205+
export UTA_DB_URL="postgresql://anonymous@localhost:[your_port_number]/uta/uta_20241220"
206+
```
207+
208+
- If you are having issues with SeqRepo, check to see if there is another
209+
process using port 5000, and try moving to a different port:
210+
- Follow the instructions above to see if port 5000 is already in use.
211+
- If it is, edit your docker-compose.yml file to specify a different port.
212+
In the lines
213+
```
214+
ports:
215+
- 5000:5000
216+
```
217+
replace the *first* number with a different number to specify a port on
218+
your local machine.
219+
````
220+
ports:
221+
- [your_port_number]:5000
222+
- Repeat the `docker-compose up` command
223+
- Test the SeqRepo REST API service with this new port
224+
```shell
225+
curl 'http://127.0.0.1:[your_port_number]/seqrepo/1/sequence/refseq:NM_000059.4?end=20'
226+
```
227+
- Set the `GA4GH_VRS_DATAPROXY_URI` environment variable to point to
228+
this UL:
229+
```shell
230+
$ export GA4GH_VRS_DATAPROXY_URI=http://localhost:[your_port_number]/seqrepo
231+
$ export SEQREPO_URI=http://localhost:[your_port_number]
232+
```
233+
165234
## VRS-Python and VRS Version Correspondence
166235
167236
The ga4gh/vrs-python repo embeds the ga4gh/vrs repo as a git submodule for testing purposes.

0 commit comments

Comments
 (0)