Skip to content

NMRdock Walkthrough

Using NMRPipe to Process Bruker Data in NMRdock

  1. Change the directory into your dataset. NMRdock is able to access your computer through /home/ubuntu/data. For the purposes of this tutorial, we are going to use the test data by typing into the command line:

    cd /home/ubuntu/test/bruker2D

  2. Once we are in the folder with our data, type the command bruker and the bruker command window will open up. Bruker

  3. Read in the parameters by pressing the Read Parameters button. Bruker Read Parameters

  4. Check to make sure that the parameters were read in correctly and update any values that need to be updated. Then press Save Script followed by Execute Script and the script will be executed to convert your Bruker formatted data into NMRPipe. You can then close the window and return to the command line. Bruker

  5. To Fourier Transform the data, execute ./nmrproc.com in the command line. nmrproc.com
  6. Now we can view the processed spectrum in NMRDraw by executing nmrDraw, which will open up the nmrDraw window (this can take a few seconds). Bruker
  7. If you are using your own data, you can phase and alter the nmrproc.com file yourself at this point. However, the nmrproc.com file for the included bruker data is already phased properly. Once the data is phased to your liking, you can close the NMRDraw window and return to the command line.
  8. Congratulations! Your NMR spectrum is now processed. To convert the NMRPipe processed spectrum to the universal UCSF format, execute pipe2ucsf test.ft2 bruker2D.ucsf. You can then open the spectrum in sparky by executing sparky bruker2D.ucsf.

Docker Installation

Docker engine for Mac, Windows (Home),Windows (Pro, Educational, Enterprise), and Linux must be downloaded and installed in order to run the Docker Image.

NOTE: Docker Desktop does NOT work on Windows 10 Home Edition. Windows 10 Home Edition requires Docker Toolbox.

OSX

To run this image on OSX, a few steps must be taken to enable X11 interfacing between the container and the host machine. This requires the installation of XQuartz.

  1. Install Docker Desktop

  2. Use Homebrew or MacPorts to install socat:

    brew install socat or sudo port install socat

  3. With socat installed, open a terminal window and type:

    socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\"$DISPLAY\"

  4. Leave the socat window open and open a new tab in terminal.

  5. Run the docker image by typing:

    docker run -it -v [path to a directory on local computer]:/home/ubuntu/data/ -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=x.x.x.x:0 compbiocore/nmrdock:latest /bin/bash

    where x.x.x.x is given by ifconfig getifaddr en0 and [path to a directory on local computer] can be set to your `pwd` or the directory of your data. To use the development branch NMRdock, replace latest with dev.

This can be done with the following script command:

1
2
3
4
5
6
7
8
9
#!/bin/csh

open -a "Terminal"
osascript -e 'tell application "Terminal" to do script "socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\\\"$DISPLAY\\\""'
set A = `ipconfig getifaddr en0`
set C = ":0 compbiocore/nmrdock:latest /bin/bash"
set B = "docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -v `pwd`:/home/ubuntu/data/ -w /home/ubuntu/data/ -e DISPLAY=$A$C"

exec $B

Windows

To run this image on Windows, a few steps must be taken to enable X11 interfacing between the container and the host machine.

  1. This requires the installation of VcXsrv Windows XServer.

  2. Install Docker for Windows 7/8/10 Home or 10 Pro/Educational/Enterprise.

  3. Open XLaunch by double clicking on the Desktop Icon.

  4. A window will appear for you to set configurations. Use the default options on the first two pages by pressing the next button. XLaunch Page 1 XLaunch Page 2

  5. On the third page, select the box next "Disable access control" to ensure that the Docker has access to the XServer. XLaunch Page 3 XLaunch Page 4

  6. Get your IP address using ipconfig. This can be done in Command Line or Powershell IPCONFIG

  7. Open Docker and execute docker run -it -v /c/:/home/ubuntu/data/ -e DISPLAY=x.x.x.x:0.0 compbiocore/nmrdock:latest /bin/bash

where x.x.x.x is your IP address.

To use the development branch NMRdock, replace latest with dev.

Linux

Most Linux distros have a native XServer that can be accessed by Docker.

Install Docker for your distribution of Linux

docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v [path to a directory on local computer]:/home/ubuntu/data/ compbiocore/nmrdock:latest /bin/bash

To use the development branch NMRdock, replace latest with dev.